使用模拟以编程方式启动windows服务
本文关键字:启动 windows 服务 方式 编程 模拟 | 更新日期: 2023-09-27 17:49:43
我已经为我的问题寻找了几个小时的答案,但在尝试了很多建议之后,我仍然卡住了。
我有一个基于c# Windows窗体的应用程序,我工作,我必须启动一个Windows服务(也是解决方案的一部分)编程(当用户点击适当的按钮)。这部分已经准备好了——我可以启动服务,但是……我在Windows 7和2008服务器上有一些问题。
问题是我不能这样做,因为我的应用程序是由机器管理员加载的,但作为一个过滤的标准,而不是作为一个完整的管理员(更多信息在这里)。如果我们以管理员身份启动应用程序,它可以正常工作,但我不想麻烦用户每次都这样做。
我想知道是否有可能弹出Windows确认屏幕时,用户进入的形式,他可以启动服务-作为一个完整的管理员。
任何想法?
谢谢
IIRC -您不能提升现有进程的权限,您需要生成一个新进程来执行需要它的操作。
找到前面的一个问题,这进一步解释了这一点
您可以通过ShellExecute(使用runas动词)启动另一个应用程序,以便Windows会提示用户或使用COM Elevation Moniker(当用户单击按钮时)。
如果你的目标是Windows Server 2008 R2/Windows 7也许你可以使用服务触发事件。
最好