C# 以管理员方式启动Winform,进而使用管理员控制Windows Service
问题起因:
1,) 问题自动分析Windows服务在正常运行时,确实会存在程序及人为原因导致该服务停止。为了在应用程序使用时确保该服务正常运行,于是有了该讨论主题。
2,)一般账户(尽管是管理员组账户)使用c#代码启动服务,依然会抛出异常,因为当前程序启动账户级别并不是管理员级别.
以管理员启动应用程序解决方案及测试:
为了解决程序以管理员组角色启动应用程序,我们需要在应用程序的工程中添加一个“Application Manifest File”文件,并配置应用程序以管理员角色账户启动。
可以参考文章:http://tech.cncms.com/web/aspnet/97244_2.html
1,) 添加了app.manifest,及修改配置后,我们的应用程序启动时,会提示弹出提示:
“”
点击“否”,将终止程序正常运行;
点击“是”,将以管理员身份运行。
2,) 验证当前应用程序是否以管理员身份启动代码,及验证结果.
验证结果:是Administrator
3,) 启动服务代码,及测试结果。
验证结果:正常启动服务
4,) 停止服务代码,及测试结果。
验证结果:正常停止服务