求助:IoGetDeviceObjectPointer获取设备对象指针失败
刚开始搞驱动,找了一个KeyMouse的例子,这个例子的功能是模拟鼠标和键盘的动作。
驱动入口,首先用下面的语句获得键盘类和鼠标类的对象指针。
PUNICODE_STRING DeviceName; // something gives you this
PDEVICE_OBJECT DeviceObject; // an output from this process
PFILE_OBJECT FileObject; // another output
NTSTATUS status = IoGetDeviceObjectPointer(DeviceName, <access mask>, &FileObject, &DeviceObject);
当devicename=\device\keyboardClass0时,可以取到设备对象指针。但当devicename=\device\PointerClass0时,
IoGetDeviceObjectPointer执行失败,返回值是0xC0000043,意思是共享违例。
不知何故,如何解决?