【问题标题】:how can i make IOCTL calls in kernel mode (windows)我如何在内核模式下进行 IOCTL 调用(Windows)
【发布时间】:2011-02-27 17:48:16
【问题描述】:

在用户模式下,可以通过DeviceIoControl 函数调用 IOCTL。
我可以在内核模式下使用什么来发出 IOCTL 调用?我必须在文件系统微过滤驱动程序中使用它。

背景
我正在写filesystem minifilter driver,我必须向存储设备发出 IOCTL 调用以找出它们的序列号和功能(可移动或不可移动)。

【问题讨论】:

    标签: windows driver kernel ioctl


    【解决方案1】:

    您可以使用FltDeviceIoControlFile 或使用IoBuildDeviceIoControlRequest 手动构建和发送 IRP 和IoCallDriver

    【讨论】:

    • 我需要调用IoCompleteRequest 来释放我的 IRP 还是较低的驱动程序可以?
    • 否,IRP 由其中一台较低的设备完成。并且不要忘记使用驱动程序验证工具检查您的驱动程序!
    • 感谢您的帮助,这对您很有帮助!
    猜你喜欢
    • 1970-01-01
    • 2013-09-25
    • 2017-08-04
    • 1970-01-01
    • 2015-11-19
    • 2023-03-15
    • 2011-06-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多