Я не знаю, есть ли встроенный раздел реестра для папки с установленной программой, но вы всегда можете создать свой собственный.У вас есть сценарий установщика, создающий ключ реестра во время установки, используя {app}
в качестве заполнителя для значения реестра.
Чтение любого произвольного ключа в реестре Windows из Java может быть выполнено с некоторыми хитростями, но дляпридерживайтесь стандартных классов JDK и документированных функций, лучше всего использовать стандартный интерфейс Preferences
.Предпочтения в корневом каталоге системы размещаются в виде ключей в папке HKLM \ Software \ JavaSoft \ Prefs \.Имейте в виду, что с заглавными буквами есть некоторая странность - каждая заглавная буква имеет префикс с косой чертой, поэтому сохраняйте название клавиши строчными.например, installdir
вместо InstallDir
.
В итоге: чтобы найти каталог установки, добавьте раздел реестра в папке Software \ Java \ Prefs к сценарию установщика, и вы можете использовать системный корень из java.util.Preferences для получения значения во время выполнения.