我需要(根据用户需求)从我的应用程序中多次运行管理进程。我希望用户只输入一次管理员凭据 - 所以我必须以某种方式存储凭据。
但是我听说由于 UAC 的设计方式,不可能做到这一点。
还有其他建议吗?
您不能存储管理员凭据。相反,只需运行一次您的管理进程,然后将其提升并在后台运行,以防您需要执行更多操作。您可以通过 NamedPipes 或套接字与其通信。
有关如何使用 WCF 进行通信的示例,这里有一个非常简单的示例:http: //bloggingabout.net/blogs/dennis/archive/2007/04/20/wcf-simple-example.aspx
您可能应该在管理进程中创建 WCF ServiceHost。