使用应用程序的提升权限调用win32服务中的方法

时间:2009-10-15 19:26:59

标签: c++ c winapi windows-services

我开发了一个创建动态WFP IP过滤器的Win32 C / C ++应用程序,但必须以管理员身份运行才能执行此操作(由于Windows安全策略)。我想在运行具有管理员权限的服务中放置需要管理员权限的代码,然后从作为普通用户运行的应用程序中调用它。

首先,这是正确的方法吗?第二,虽然我知道如何创建服务,但我找不到任何参考,说明如何调用/向服务发送请求中的方法。

虽然我可能会欺骗并使用清单,但我不介意做正确的工作,特别是因为功能可以跨应用程序重复使用。

有人有经验或指点吗?

1 个答案:

答案 0 :(得分:0)

拥有一个具有执行所需操作权限的单独可执行文件当然是正确的方法,因此主应用程序可以在受限用户帐户中运行。至于向服务发送请求,它作为服务运行的事实没有什么特别之处。只需将其视为使用管理员用户凭据运行的进程即可。因此,与其他任何进程到进程情况相同的方式进行通信,例如命名管道,网络套接字等。