Java / Windows Получить местоположение приложения - PullRequest
0 голосов
/ 14 сентября 2009

Есть ли способ узнать местоположение установленного приложения без поиска в файловой системе?

РЕДАКТИРОВАТЬ: Извините за недостаточно четкое разъяснение вопроса. Я пытаюсь понять, где установлен Firefox из Java-приложения. Я хотел бы начать установку для расширения.

Ответы [ 3 ]

3 голосов
/ 14 сентября 2009

РЕДАКТИРОВАТЬ: Firefox имеет раздел реестра в ключе HKLM \ Software \ Mozilla \ Mozilla Firefox \\ Main \ InstallDirectory. В этом же пути HKLM \ Software \ Mozilla есть ключ CurrentVersion, по которому можно получить номер версии.

0 голосов
/ 14 сентября 2009

Единственный способ сделать это в Windows - прочитать реестр. В сообщении Джеффа Стори есть ключ reg, который вам нужен. Что касается этого с Java, мой первоначальный ответ был: вы не можете без использования JNI.

Но потом я немного погуглил и нашел эту библиотеку

Этот подход немного нов, поскольку он включает доступ к частям реализации Sun Preferences API, которые обычно недоступны. Это, конечно, не будет совместимо с различными JVM и может сломаться по мере развития JRE Sun - но ... хорошо - держу пари, это будет полезно по крайней мере пару лет, может быть, дольше. И это намного проще, чем писать JNI самостоятельно ...

0 голосов
/ 14 сентября 2009

В Linux вы можете использовать Runtime.exec () для вызова , которая системной программы, например, , который firefox вернет что-то вроде / usr / bin / firefox . Это не будет работать в Windows, и, к сожалению, не работает и в OS X, несмотря на то, что оно основано на UNIX.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...