Как выполнить исполняемый файл Windows удаленно с сервера Java? - PullRequest
0 голосов
/ 27 сентября 2011

Я хочу выполнить программу на компьютере с операционной системой Windows из Java-программы, которая выполняется на сервере Java на другом компьютере с операционной системой Windows, и вернуть что-то из этого исполняемого файла.

Пока я изучаю различные способы сделать этоЯ, кажется, не нахожу какой-либо популярный подход.

Какой бы быстрый, но стандартный способ выполнения этого распределенного вызова?

(RPC, CORBA, Sockets ??)

Спасибо

Ответы [ 2 ]

0 голосов
/ 27 сентября 2011

Хорошо, если вы не можете запустить java на другом компьютере, я бы локально вызвал приложение .NET, которое выполняет RPC для другого приложения .NET на другом компьютере.В этом случае вы можете использовать .NET Remoting или WCF (или DCOM, если вы вынуждены).

В качестве другого варианта вы можете придерживаться сокетов как на стороне Java, так и на стороне .NET.(Я уверен, что .NET также имеет реализацию Socket)

0 голосов
/ 27 сентября 2011

Если обе машины работают в среде доверенной локальной сети, сокеты должны справиться с задачей.В Java встроены очень удобные классы сокетов, так что это будет очень просто реализовать.

На исполнителе вам нужно будет создать ServerSocket.Затем в цикле accept() подключите сокет, запустите вашу программу, запишите данные в выходной поток сокета и закройте его.

На стороне подключения вы просто создадите new Socket, прочитайтеданные из входного потока сокета и закройте его.

Если вы хотите обслуживать несколько запросов одновременно, это будет немного менее просто, но все же довольно просто, если вы знаете, как программировать потоки.

...