2011-12-23 2 views
1

Я написал приложение java. Это зависит от Nmap, Wireshark и других инструментов командной строки, которые он вызывает с помощью приглашения DOS в Windows.Как связать Nmap и Wireshark с приложением?

Если я хочу сделать установщик для приложения, как я могу убедиться, что Nomap и Wireshark установлены на компьютере пользователя, а переменная среды «Путь» обновляется с помощью своих каталогов установки, так что когда я вызываю подсказки DOS из своего приложения, команды выполняются правильно?

+0

BTW - Какова мотивация выбора Java для написания этого программного обеспечения, ориентированного на Windows (на основе командной строки)? Не лучше ли подходит API от MS (например .Net) для этой задачи (в том числе и для установщика)? –

ответ

0

Вы можете использовать класс ProcessBuilder, чтобы проверить, существует ли приложение. Просто по командной строке что-то запустить запрос типа:

ftype | find "Wireshark" 

и проверить возвращенную строку, либо он будет иметь путь к Wireshark бинарного или сообщение об ошибке. После того, как он есть, вы можете вызывать команды wirehark с этого пути abs.

Если нет, вы можете упаковать их как переносной инструмент, упакованный в ваш файл jar. Вы можете развязать этот файл во время выполнения и через построитель процессов, вызвать этот инструмент и запустить зависящие от проводника задачи. То же самое для nmap.

Надеюсь, это даст вам представление о том, как это сделать.

Смежные вопросы