2014-02-06 3 views
2

У меня есть задача сохранить фактический путь установки в файл INI (до определенного ключа). Во время установки пользователь получает папку по умолчанию для установки приложения, но он может изменить ее во время выполнения (в мастере). Как поймать конечный путь к папке, о котором он решил, и поместить его в мой файл INI?Сохраните путь установки к файлу INI

Спасибо!

+3

Обратите внимание, что большинство приложений могут открыть путь к себе, пока они работают с использованием вызовов библиотеки/API, поэтому нет необходимости делать это, если это для го e использование самого приложения. Запись местоположения в файл полезна только в том случае, если это требуется другим другим приложением, которое не может понять его каким-либо другим способом. – Miral

+0

@Miral, если вы (случайно) устанавливаете приложения на основе Javafx (его собственные упакованные инсталляторы на Windows используют inno setup), это может быть полезно (поскольку поиск местоположения файла jar из запущенной программы Java немного затруднен) –

+0

@ BjarneBoström Есть [несколько решений для этого] (http://stackoverflow.com/questions/320542/how-to-get-the-path-of-a-running-jar-file) ... – Miral

ответ

1

Вы можете сохранить значение с помощью записи [Ini] и константы {app}.

[INI] 
Filename: "MyProg.ini"; Section: "InstallSettings"; Key: "InstallPath"; String: "{app}" 

Обратите внимание, что, как Gavin pointed out, приложение может определить его собственный путь, так это не должно, т обычно необходимо, если внешние приложения не требуют в этом случае, registry записи намного проще найти:

[Registry] 
Root: HKLM; Subkey: "Software\My Company\My Program\Settings"; ValueType: string; ValueName: "InstallPath"; ValueData: "{app}" 

([Ini] ответ curtosy из TLama's deleted post.)

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