2

一个 C#(桌面)应用程序是否可以在另一台机器上启动和停止应用程序?

我的意思不是恶意的,甚至不是互联网上的。我在一个房间里有两台电脑,我需要一个应用程序来启动(然后停止)另一个应用程序。

我脑海中的一个半成型路线是在目标计算机上使用一个辅助程序,所以我想我应该指出我完全能够对任何一台机器进行任何必要的更改。

4

3 回答 3

2

如果你能做改变,那么有很多可能性!

  • WMI:从未尝试过,但如果有足够的权限,您应该能够启动进程,或者至少能够启动远程计算机上的服务
  • .NET 远程处理:有些旧,但易于实现
  • WCF
  • HttpListener
  • 私人消息队列(这是我曾经做过的)
  • ?

大多数替代方案都涉及编写一个小型服务,该服务侦听您选择的通信技术,然后启动一个进程或执行其他操作。

于 2010-10-02T12:27:00.663 回答
2

Code Project 上有一个使用 WMI 的示例:

在 C# 中使用 WMI 创建远程进程

但可能在你的情况下,一个简单的PsExec.exe电话可能就足够了,例如

Process.Start("psexec.exe", "\\remotehost -u user -p password calc.exe");
于 2010-10-02T12:28:11.710 回答
0

来自 sysinternals 的 psexec.exe 或使用 Powershell 2.0 和 WMI

于 2010-10-02T12:26:42.943 回答