Каталог данных приложений Windows
-
22-09-2019 - |
Вопрос
С переменной среды % allusersprofile % я могу получить каталог, где хранятся общие настройки. Но большинство программ хранят свои настройки в подразделе «Anwendungsdaten» (немецкий, данные приложения). Есть ли способ получить прямой путь к этой папке? Проблема в том, что его имя зависит от языка. Спасибо.
Решение
Не уверен в том, какой язык программирования вы используете, поэтому я предполагаю, что основной API Windows. В XP вы можете позвонить ShgetFolderPath с csidl_common_appdata в качестве параметра. Похоже, Vista и 7 имеют Новый набор функций Это делает то же самое, вы, вероятно, захотите позвонить Shget KnowledFoldPath.
В Windows Forms, вы можете использовать свойство Application.UserAppDatapath.
Другие советы
Я не вижу прямого способа получить эту информацию напрямую. Если ничто другое не появится, единственное, что приходит на ум, - это то, что, вероятно, будет работать в 99% всех случаев:
Брать
%USERPROFILE%
Брать
%APPDATA%
Брать
%APPDATA%
и заменить%USERPROFILE%
Null. «Отдых» должен быть «/данные приложения» или «/anwendungsdaten» или что -то ещеБрать
%ALLUSERSPROFILE%
Добавьте результат шага 3. к нему
Вы должны получить правильный локализованный путь к каталогу «AppData» профиля «все пользователи».
Примечание: это не проверено, и у меня мало опыта в этой области. Но это может сработать.
Я не знаю о каком -либо прямом способе его получить, но если язык вы можете получить, вы можете получить конец %AppData %, от последнего символа до конца строки и добавить это к %allusersprofile %