我正在使用本质上类似于 Microsoft 的 MiniSpy 示例的自定义微过滤器驱动程序,并且我已经用 C# 编写了一个用户模式应用程序来与之通信。
我需要管理员权限才能安装过滤器——这似乎是合理的。但是如果没有管理员权限,我的应用程序会HResult:0x80070005 (Access is denied)
在关键调用(如FilterAttach
和FilterConnectCommunicationPort
. 拥有管理员权限一切正常。
我的问题是:有没有办法绕过用户模式应用程序的管理员要求?
这篇文章:https ://www.osronline.com/showthread.cfm?link=157827似乎表明打开通信端口很好,但没有连接到驱动器:
但是,它不能附加到卷。正如微软的人解释的那样,这是一个只允许管理员操作的操作。
有没有办法以我的非管理员用户模式应用程序可以连接到的管理员权限启动第二个服务?如果是这样,我什至需要第二次服务还是可以使用过滤器本身?或者有什么办法可以让我的应用程序摆脱这些管理员权限要求?