我有一个驱动程序(内核模式)(KMDF),我有一个用户喜好形式。我需要从驱动程序代码开始活动并获取首选项。 那么我如何从Windows操作系统的内核启动该用户模式程序?如何从Windows内核模式启动用户模式程序
0
A
回答
3
获得驱动程序在用户模式下执行某些操作的最佳方式是让它与可以完成工作的用户模式组件通信。所以,你需要做一些类似于用户模式的服务,为驱动程序打开一个通道,然后当驱动程序需要执行某些操作(例如启动进程)时,它可以向服务发送消息。
如需了解更多信息,请搜索osronline获取更多信息,或查看FltSendMessage API文档,了解构建微型过滤器的信息。
正如其他海报已经指出,在DriverEntry中执行此操作可能无法正常工作,因为甚至可能连用户会话都无法与之通信。
1
只要你不能使用怪异的无证技巧,如APC,可能会导致许多许多不兼容问题; 只需将您的应用程序作为自动启动(例如CurrentVersion \ Run)并将IRP发送给驱动程序并提供需要发送的数据。
相关问题
- 1. 内核模式和用户模式驱动程序
- 2. Windows如何实现用户模式/内核模式?
- 3. 如何从用户模式调用/挂钩内核模式API?
- 4. 如何从用户模式切换到内核模式?
- 5. 从内核模式调用dll C++ windows
- 6. HTTP.SYS内核模式驱动程序
- 7. 如何发送和接收从内核模式驱动程序到用户模式的二进制数据
- 8. 用户模式和内核驱动程序通信
- 9. 以内核模式启动服务(Vista)
- 10. 从内核模式执行用户模式可执行文件
- 11. 产生内核模式线程 - Windows
- 12. 内核模式和用户模式应用程序之间的通信
- 13. 从Windows 10的UI测试模式启动iOS应用程序
- 14. 用户线程(OS Windows)的内核模式堆栈是什么?
- 15. 如何在VC++中将信息从内核模式传递到用户模式?
- 16. 如何从Windows中的内核模式找到进程使用的内存
- 17. 内核堆栈与用户模式应用程序堆栈
- 18. Framework7从模态的Cordova应用程序启动模式
- 19. 以快捷方式从Windows 8 Metro模式启动Chrome应用程序
- 20. 用户到内核模式的大图?
- 21. 内核/用户模式下的CPU
- 22. 内核模式 - 是否可以访问用户模式?
- 23. 内核模式到用户模式通信
- 24. 特权模式,内核模式和超级用户模式之间的区别
- 25. 如何从应用程序内启动Android模式锁定屏幕
- 26. Windows XP:我的程序是否以内核模式运行?
- 27. 内核如何知道CPU是处于用户模式还是kenel模式?
- 28. 如何在PowerShell中获取内核模式时间和用户模式时间?
- 29. 传递从用户模式可变长度结构来内核模式
- 30. 我如何使内核模式下的IOCTL调用(windows)
这看起来有点奇怪。为什么你需要从驱动程序启动偏好表单?用户模式程序应该以标准方式启动,当用户执行它时。 – 2015-03-19 09:20:38
@AlexFarber我想在驱动程序条目中显示一个弹出窗口并将结果返回。 – 2015-03-19 10:00:02
DriverEntry可以在引导时执行,也可以在用户登录之前执行。无论如何,我从来没有见过这样的实施。我认为你需要编写用户模式程序来侦听驱动程序事件,并在必要时显示一些UI。 – 2015-03-19 10:23:23