реклама на сайте
подробности

 
 
> Драйвер PCI, перенос с ХР на win7
sabbatazh
сообщение Mar 21 2012, 21:13
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 20-12-11
Пользователь №: 68 986



Приветствую ВСЕХ!!!
Подскажите уважаемые Знатоки, чем воспользоваться для решения вот такой задачи!
Написан драйвер под ХР, для платы PCI еще годов так n назад, в nuMega… и встал вопрос переноса его на win7…
Кто-то ХР дрова переносил, сталкивался с проблемами и какими подручными средствами лучше всего воспользоваться?!
пересмотрел примеры из ДДК и стряпал первый пробник...
и пытаюсь прочитать с помощью
Код
NTSTATUS MDMAI_IO_READ_Handler(PIRP Irp, PIO_STACK_LOCATION pIoStackIrp, UINT *pdwDataWritten)
{
    NTSTATUS status = STATUS_UNSUCCESSFUL;    
    PCHAR pInputBuffer;
    PCHAR pOutputBuffer;
    PCHAR pReturnData;
    UINT dwDataRead = 0, dwDataWritten = 0;
    UINT dwDataSize = sizeof(ULONG);    
    USHORT Port;

         DbgPrint("ReadDirectOutIO Called \r\n");

    pInputBuffer = (PCHAR)Irp->AssociatedIrp.SystemBuffer;
    pOutputBuffer = NULL;

    if(Irp->MdlAddress)
    {
         pOutputBuffer = (PCHAR)MmGetSystemAddressForMdlSafe(Irp->MdlAddress, NormalPagePriority);
    }

      if(pInputBuffer && pOutputBuffer)
      {
         if(pIoStackIrp->Parameters.DeviceIoControl.OutputBufferLength >= dwDataSize)
         {
            Port = pInputBuffer[0];
             pReturnData = (PCHAR)READ_PORT_UCHAR((PUCHAR)Port); // ну очень смущает!!!!!!!!!
                  /*
                   * We use "RtlCopyMemory" in the kernel instead of memcpy.
                   * RtlCopyMemory *IS* memcpy, however it's best to use the
                   * wrapper in case this changes in the future.
                   */
                  RtlCopyMemory(pOutputBuffer, pReturnData, dwDataSize);
                  *pdwDataWritten = dwDataSize;
                  status = STATUS_SUCCESS;
         }
         else
         {
                 *pdwDataWritten = dwDataSize;
                  status = STATUS_BUFFER_TOO_SMALL;
         }  
      }    
    return status;
}

в результате ни чего и ошибки!(
направьте на путь истинный!
Спасибо!!!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th June 2025 - 00:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016