Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kernel 如何:从minifilter驱动程序调用exe?_Kernel_Driver_Minifilter - Fatal编程技术网

Kernel 如何:从minifilter驱动程序调用exe?

Kernel 如何:从minifilter驱动程序调用exe?,kernel,driver,minifilter,Kernel,Driver,Minifilter,我想从内核模式驱动程序调用带有2个参数的exe,并在驱动程序中返回布尔值(0或1)结果 如何做到这一点?您不能真正从minifilter或任何其他内核驱动程序启动用户模式进程。 您可能需要重新思考您的设计 此线程可能会帮助您:据我所知,只有用户模式进程通常会启动进程。我能想到的只有一次,当Windows内核在没有用户模式进程帮助的情况下完全从内核模式启动进程时,也就是当它在早期引导期间启动SMS时,但是SMS必须被认为在这个上下文中是特殊的,因为它不在任何特定子系统的上下文中运行。一旦CSRSS

我想从内核模式驱动程序调用带有2个参数的exe,并在驱动程序中返回布尔值(0或1)结果


如何做到这一点?

您不能真正从minifilter或任何其他内核驱动程序启动用户模式进程。 您可能需要重新思考您的设计


此线程可能会帮助您:

据我所知,只有用户模式进程通常会启动进程。我能想到的只有一次,当Windows内核在没有用户模式进程帮助的情况下完全从内核模式启动进程时,也就是当它在早期引导期间启动SMS时,但是SMS必须被认为在这个上下文中是特殊的,因为它不在任何特定子系统的上下文中运行。一旦CSRSS运行,所有进程都会在用户模式进程的协作下启动。从内核模式启动进程将绕过用户模式下的win32和CSRSS,这将使进程不太可能做任何有用的事情。即使可以做到,因为它不是内核自己做过多次的事情,似乎也不太容易做到或记录下来。

内核模式-用户模式通信是以另一种方式维护的。基本上,在迷你过滤器中,您必须使用此框架进行通信-FltCreateCommunicationPort/FltSendMessage/etc 阅读这些材料 (关于沟通的章节)


为什么要这样做?如果我们有更多的背景知识来了解你想要实现的目标,那么提供更具建设性的指导可能会更容易。事实上,你的问题的答案是“你不能”,这对你没有多大帮助。@Stewart--我给一个司机写了一封信。。它已从IRP缓冲区提取了一个值。现在基于这个关键字,我必须通过或不通过irp。。。。。因此,我需要与数据库通信,这是不容易从内核模式驱动程序。。。。。。。。。。。。。因此,我使用一个应用程序或exe来执行此操作,这将导致正确或错误,在此基础上,我将通过或不通过irp。。。。。。因此,驱动程序和应用程序之间的链接现在就在那里。。。。。。。。。。。。。