2010-10-02 41 views
2

一個C#(桌面)應用程序可以在另一臺機器上啓動和停止應用程序嗎?如何在另一臺計算機上啓動/停止應用程序?

我不是指惡意的意思,甚至不是通過互聯網。我在一個房間裏有兩臺電腦,我需要一個應用程序啓動(然後停止)和另一個應用程序。

我腦海中一條半成形的路線是在目標計算機上使用輔助程序,所以我想我應該指出,我完全可以對任一機器進行任何必要的更改。 Sysinternals公司或使用PowerShell 2.0和WMI

回答

0

psexec.exe如果你能做到的變化有這麼多的可能性!

  • WMI:從未嘗試過了這一點,但你應該能夠啓動進程給予足夠的權限,或在遠程機器上至少服務
  • .NET遠程:有點老了,但很容易實現
  • WCF
  • HttpListener
  • 私人消息隊列(這是我做一次)

大多數替代方案都涉及到編寫一個小型服務,它監聽您選擇的通信技術,然後啓動一個流程或執行其他操作。

2

使用WMI的一個例子是高達代碼項目:

Create a Remote Process using WMI in C#

,不過也許在你的情況下,一個簡單的電話PsExec.exe可能是不夠的,例如

Process.Start("psexec.exe", "\\remotehost -u user -p password calc.exe"); 
相關問題