我们有Windows Sysinternals提供的PsService.exe工具来启动或停止任何远程机器的服务。但是为了在我们的C#中使用这个exe,我们需要使用传统的方法来调用C#代码中的进程。
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = @"C:\Path\PsService.exe";
p.StartInfo.Arguments = @"\\server64 restart spooler";
p.Start();
string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();
使用这种方法我们几乎没有控制(异常处理,日志记录等),并且使用起来有点麻烦。是否有任何C#库,通过它我们可以实现相同而不是调用进程。
我做了一些谷歌搜索,运气很少。
这同样适用于其他工具,如PsExec,PsKill等