从驱动程序创建进程

时间:2009-07-16 06:14:10

标签: windows kernel driver internals

有没有办法在Windows NT平台(XP-W7)上从内核模式创建用户模式进程?

编辑:我必须只安装驱动程序。这是项目的具体内容。

3 个答案:

答案 0 :(得分:5)

要创建有效的win32进程,驱动程序必须与CSRSS进行通信(完全未记录的内容)。所以我最后排队了一个用户模式APC,并在现有win32进程的上下文中为APC代码分配虚拟内存(该代码将调用CreateProcess并完成工作)。

这是一种棘手的方式但它有效。

答案 1 :(得分:2)

我不知道实现这一目标的更简单方法。但是如果运行Windows服务会使重叠的DeviceIoControl进入您的驱动程序呢?返回时,服务可以检查从驱动程序收到的数据并启动相应的应用程序。

答案 2 :(得分:0)

这不能直接完成 - 创建一个win32进程需要一些由CreateProcess的用户模式部分设置,而不仅仅是在内核模式下创建进程对象。

您需要一些用户模式代码 - 服务,桌面应用等,以启动您的用户模式应用。

相关问题