我正在尝试在Windows 7(64位)计算机上运行自定义内核模式驱动程序。驱动程序服务已启动,但IO控制请求返回错误。
DeviceIoControl(hDevice,OPEN_PHYSICAL_MEMORY,NULL,0,ph,sizeof(HANDLE),cb,NULL)
和#define OPEN_PHYSICAL_MEMORY __ CTL_CODE(0x8124,0x801,0,FILE_READ_DATA)。
getlasterror()返回错误代码24。
ERROR_BAD_LENGTH
24 (0x18)
The program issued a command but the command length is incorrect.
该功能在32位操作系统中运行良好。请帮我解决这个错误。
谢谢。
答案 0 :(得分:0)
sizeof(HANDLE) - 这是32位应用程序的4字节,但是从64位驱动程序视图 - 这是8字节。这里和错误