我正在使用C#开发Windows应用程序。我想在backEnd运行一个.sys文件(基本上是驱动程序),因为我的代码使用了某些函数来实现输出。
我如何用C#编写代码?如果.sys文件放在“Bin”文件夹中,它就不会运行,因为我猜它可以作为服务运行。
考虑名称 - "someDriver.sys"
(我在这里使用的是Win7操作系统)
我可以在内核模式下将此.sys文件作为服务运行吗? 我的应用程序非常简单,没有安装程序(我也不想拥有它)。你能帮我解决这个问题,我需要有.sys文件才能使我的功能正常工作。
答案 0 :(得分:2)
您是否尝试过在本文How to install driver dynamically or install driver as a service for Windows中看到它是如何完成的
您必须使用互操作来调整呼叫
使用此工具可以帮助您完成Interop定义:PInvoke Interop Assistant
答案 1 :(得分:0)
您可以使用this answer中的代码,只需将SERVICE_WIN32_OWN_PROCESS
更改为SERVICE_KERNEL_DRIVER
(0x00000001)。那你就可以做
ServiceInsatller.InstallAndStart("yourServiceName", "Some Description", "C:\path\to\driver.sys");
这对我有用。