阅读:1246回复:4
查找Windows设备
我使用下面的办法查找C:盘对应的设备
|
|
沙发#
发布于:2009-05-18 17:19
InitializeObjectAttributes(&objectAttributes, pDiskName, OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE, NULL, NULL );
status = ZwCreateFile(&ntFileHandle, GENERIC_WRITE,//SYNCHRONIZE|FILE_ANY_ACCESS, &objectAttributes, &ioStatus, NULL, 0, FILE_SHARE_READ|FILE_SHARE_WRITE, FILE_OPEN, FILE_SYNCHRONOUS_IO_NONALERT|FILE_DIRECTORY_FILE, NULL, 0); if (!NT_SUCCESS(status)) { KdPrint( ("shar: Failed to open %ws. Error Code: 0x%xL\n", pDiskName, status) ); DbgPrint(("shar: Could not open drive\n")); return FALSE; } else { DbgPrint(("shar: Open Device is OK\n")); } |
|
板凳#
发布于:2009-05-18 17:20
可是老是打开不成功,不知道哪位兄弟知道为什么
|
|
地板#
发布于:2009-05-18 22:11
What is the disk name you are using? What error code you got?
|
|
地下室#
发布于:2009-05-21 14:25
他们都成功 但是使用这个DiskDeviceObject = IoGetRelatedDeviceObject(fileObject); 找到设备对象 并将我新创建的设备绑定到其上时 出现了*** Fatal System Error: 0x0000006b
(0xC0000010,0x00000002,0x00000000,0x00000000) Break instruction exception - code 80000003 (first chance) A fatal system error has occurred. Debugger entered on first try; Bugcheck callbacks have not been invoked. A fatal system error has occurred. 绑定是用这个绑定的 IoAttachDeviceToDeviceStack(MyDevice,DiskDeviceObject); |
|