Доступ к консольному приложению с другого компьютера - .NET - PullRequest
0 голосов
/ 26 января 2011

У меня есть машина A, на которой я запускаю веб-сервис, который должен вызывать консольное приложение на компьютере B. Оба они находятся в одном домене, и я могу настроить права, если мне нужно.

Должен ли я использовать удаленное взаимодействие для этого или WCF помогает?

Ответы [ 2 ]

0 голосов
/ 26 января 2011

Архитектурно, это звучит так, как будто у вас есть Служба А, которая должна запустить рабочий процесс, и этот рабочий процесс оказывается консольным приложением.на другом сервере.Если это так, я бы создал службу B, которая живет на том же сервере, что и консольное приложение.и сделать так, чтобы служба A выполняла вызов службы B с помощью WCF.Вы не хотите звонить напрямую, так как не хотите, чтобы ваша служба блокировала результаты вашего консольного приложения.

Существует множество хороших примеров выполнения вызовов в очереди между службами.Смотрите "вызовы в очереди" здесь .Если службе A требуется ответ от службы B об успешном или неудачном вызове, это вызов в очереди, возвращающийся в обратном направлении.

0 голосов
/ 26 января 2011

Если вы находитесь в домене Windows, вы можете использовать инструменты Sysinternal для выполнения удаленных вызовов процедур (RPC).

Sysinternals Suite: http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx

Некоторые полезные инструменты Sysinternal включают в себя:

  • psexec.exe - Удаленное выполнение
  • pskill.exe - убить удаленный процесс
  • psservice.exe - запуск / остановка пульта обслуживание

Если вы Linux, я часто просто устанавливаю OpenSSH, а затем SSH на другую машину. В Linux есть метод RPC, но я не знаком с ним.

...