3

我想从一个驱动程序向另一个完全不同的驱动程序调用 IOCTL(不在同一个堆栈上)

我在网上查过,但他们只讲如何将IOCTL发送给较低的驱动程序,但不是我的情况。

ps:两个驱动程序都是我写的,所以我可以在第二个驱动程序中创建一个设备对象,但是我怎样才能与它通信(我不能从内核调用 DeviceIOControl)

谢谢 !

4

1 回答 1

3

它与从用户空间发送 IOCTL 没有太大区别。只需使用ZwOpenFile来获取设备的句柄,并使用ZwDeviceIoControlFile来发送 IOCTL。并且不要忘记为句柄设置 OBJ_KERNEL_HANDLE 属性。

于 2013-08-06T13:11:06.420 回答