DeviceIoControl возвращает false - PullRequest
       10

DeviceIoControl возвращает false

0 голосов
/ 15 января 2010

В моем коде C # DeviceIoControl возвращает false, дескриптор правильный

DeviceIoControl(deviceHandle,
  IOCTL_STORAGE_GET_DEVICE_NUMBER,
  IntPtr.Zero,
  0,
  OutBuffPtr,//&psdn,
  OutBuffSize,
  ref dwBytesReturned,
   IntPtr.Zero);

Ответы [ 2 ]

0 голосов
/ 17 января 2010

Я пытался использовать Marshal.GetLastWin32Error (), который возвратил 1, в соответствии с MSDN это означает, что это неправильная функция. В коде я пытаюсь получить номер устройства, передавая Intptr в буфер размера STORAGE_DEVICE_NUMBER (который составляет 12 байт) из функции DeviceIoControl в kernel32.dll.

Я зашел в тупик.

0 голосов
/ 15 января 2010

Здесь не так много данных для продолжения, но Marshal.GetLastWin32Error () должно дать вам более конкретную информацию об ошибке.

...