【问题标题】:Sending IRP_MJ_SYSTEM_CONTROL request from user-mode从用户模式发送 IRP_MJ_SYSTEM_CONTROL 请求
【发布时间】:2016-06-08 15:00:48
【问题描述】:

我有 Windows 内核模式驱动程序和用户模式 ​​DLL 作为驱动程序和 GUI 应用程序之间的中间层。

我使用 DeviceIoControl 函数从用户模式 ​​DLL 向驱动程序发送 IRP_MJ_DEVICE_CONTROL 请求,它运行良好。

但我也想从用户模式发送 IRP_MJ_SYSTEM_CONTROL 请求。我的驱动程序源代码中有 pnp.c 模块,它实现了 DispatchSystemControl 例程,该例程处理 IRP_MN_START_DEVICE、IRP_MN_START_DEVICE、IRP_MN_REMOVE_DEVICE 等 IRP。

我可以看到这个处理程序运行良好,例如 IRP_MN_REMOVE_DEVICE 处理程序在我移除设备时随时调用。

但我想知道是否有任何方法可以使用某些功能从用户模式发送 IRP_MJ_SYSTEM_CONTROL 请求,例如与我使用 DeviceIoControl 发送 IRP_MJ_DEVICE_CONTROL 的方式相同

【问题讨论】:

    标签: c++ driver wmi hardware wdk


    【解决方案1】:

    IRP_MJ_SYSTEM_CONTROL 请求由 WMI 的内核模式驱动程序发送。更多详情请见this MSDN article

    【讨论】:

    • @chaika_sv 如果对您有帮助,请将此帖标记为Answered 以供他人使用
    猜你喜欢
    • 1970-01-01
    • 2021-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-02
    • 1970-01-01
    • 1970-01-01
    • 2019-09-14
    相关资源
    最近更新 更多