我需要通过 C# 代码在远程机器上安装/卸载服务。
由于防火墙问题,我无法使用 WMI。我不喜欢使用 PsExec 远程调用 SC.exe 或SC.exe \\server create
在本地使用,因为这些选项需要对输出进行文本解析。
TopShelf 也不是一种选择。
对于启动/停止,我使用了带有模拟的ServiceController类。
我需要通过 C# 代码在远程机器上安装/卸载服务。
由于防火墙问题,我无法使用 WMI。我不喜欢使用 PsExec 远程调用 SC.exe 或SC.exe \\server create
在本地使用,因为这些选项需要对输出进行文本解析。
TopShelf 也不是一种选择。
对于启动/停止,我使用了带有模拟的ServiceController类。
您可以为安装/卸载过程创建一个批处理文件,并将其注册到计划任务中,以便在创建并启用它后每分钟运行一次。使用此库远程管理计划任务:
http://taskscheduler.codeplex.com/
将您的任务设置为等待一分钟,检查退出代码,然后删除该作业。