Запуск приложения Java в C # NET - PullRequest
2 голосов
/ 02 марта 2011

Некоторое время назад я написал приложение в C # NET, которое в основном позволяет запускать / останавливать созданный мною .exe-файл при запуске и остановке java-приложения (Minecraft).

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

Некоторое время назад я прочитал кое-что о stackoverflow, в котором говорилось, что есть некоторые API, которые в основном позволят вам управлять приложениями Java внутри приложения C # NET, но сейчас я не могу его найти.

Кто-нибудь знает, как я мог это сделать?

Ответы [ 2 ]

1 голос
/ 02 марта 2011

Если вы запускаете и управляете Java-приложением из C # с помощью класса Process , вы можете отправлять входные данные из вашего приложения C # в запущенный процесс Java-приложения через Process.StandardInput .

0 голосов
/ 02 марта 2011

Minecraft принимает команды от входящей системы и отвечает на выход системы.

Когда вы запускаете minecraft из своего приложения, вы в основном создаете новый процесс. Этот процесс имеет два потока, один для выхода из системы и один для входа в систему. Вам нужно получить эти потоки. Если вы отправляете символы в систему в потоке, они будут интерпретироваться как команды для minecraft. Если вы читаете из системы, тогда вы получите ответ Minecrafts.

Ваша следующая задача - разрешить пользователям отправлять команды в minecraft. Один из способов сделать это - позволить пользователям вводить команды на веб-странице, которую вы храните в файле. Вы можете прочитать отдельный поток из файла и записать команды в систему Minecraft в потоке.

...