Как я могу запускать / останавливать приложения на другом компьютере? - PullRequest
2 голосов
/ 02 октября 2010

Возможно ли, чтобы одно приложение C # (настольное) запускало и останавливало приложения на другом компьютере?

Я не имею в виду злонамеренное действие или даже через Интернет.У меня в комнате два компьютера, и мне нужно приложение на одном для запуска (а затем остановки), а на другом - приложение.

Один наполовину сформированный маршрут, на мой взгляд, заключался в использовании вспомогательной программы на целикомпьютер, так что, я полагаю, мне следует указать, что я полностью могу внести любые необходимые изменения в любой из компьютеров.

Ответы [ 3 ]

2 голосов
/ 02 октября 2010

Если вы можете вносить изменения, у вас так много возможностей!

  • WMI: Никогда не пробовал, но при наличии достаточных прав вы сможете запускать процессы или, по крайней мере, службы на удаленной машине
  • .NET remoting: несколько устаревший, но простой в реализации
  • WCF
  • HttpListener
  • Личные очереди сообщений (вот что я однажды сделал)

Большинство альтернатив включают в себя написание небольшого сервиса, который прослушивает выбранную вами коммуникационную технику и затем запускает процесс или делает что-то еще.

2 голосов
/ 02 октября 2010

Пример использования WMI для Code Project:

Создание удаленного процесса с использованием WMI в C #

Но, вероятно, в вашем случае простого вызова PsExec.exe может быть достаточно, например,

Process.Start("psexec.exe", "\\remotehost -u user -p password calc.exe");
0 голосов
/ 02 октября 2010

psexec.exe от sysinternals или используйте Powershell 2.0 и WMI

...