delphi应用程序和Windows NT系统驱动程序之间的通信

我正在尝试构建一个非常简单的驱动程序.它的唯一目的是注册“PsSetCreateProcessnotifyRoutine”和从内核收到的回调,通知我的Win32应用程序关于哪些proccesses启动和停止.

我只知道如何用“DriverEntry”和“DriverUnload”构建这样一个简单的驱动程序,并用DDK编译它.但我不知道如何实际沟通.我知道可以用IOCTL完成.但除此之外,我在黑暗中.我找不到在Delphi中如何做到这一点的简单例子.我只知道可以做到.

所以我正在寻找的是一些简单易懂的教程,如何做到这一点或事件更好的例子delphi程序与acompaniying驱动程序代码.也许甚至还有其他沟通方式.

任何帮助都会得到满足.

解决方法

如果在Delphi中没关系.您必须使用DeviceIoControl功能.阅读 article in MSDN关于它.

简而言之,您必须从可用的集合中选择一些IOCTL codes.然后使用其中一个代码调用DeviceIoControl并传递一些数据,并在驱动程序中处理该请求并返回其他内容.

您还可以处理标准IOCTLS,例如通过在用户模式下调用ReadFile或WriteFile生成的IOCTLS.

不要寻找“如何在Delphi中做到这一点的教程”,只需寻找任何教程.它们都是一样的,无论语言如何,它都是纯粹的Win32 / Native api.例如Here’s one,只是用Google搜索出来.

相关文章

 从网上看到《Delphi API HOOK完全说明》这篇文章,基本上都...
  从网上看到《Delphi API HOOK完全说明》这篇文章,基本上...
ffmpeg 是一套强大的开源的多媒体库 一般都是用 c/c+&#x...
32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和ED...
1 mov dst, src dst是目的操作数,src是源操作数,指令实现的...