Средства для работы с конфигурационными файлами.

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

BBB
Сообщения: 1298
Зарегистрирован: 27 дек 2005, 13:37

BulldozerBSG писал(а):Правда с функциями "GetPrivateProfileString() и др." есть маленькая особенность, если не указывать полный путь к файлу, то считается что он находится в каталоге Windows.
Да, точно. Есть такая буква. Впрочем, об этом чесстно сказано в MSDN в описании параметра "lpFileName" этой функции.

Так что я, например, использую следующий алгоритм:
1) Получаю полный путь+имя к EXE-файлу (это достаточно несложно сделать)
2) В полученном полном имени файла расширение '.EXE' заменяем на '.INI'. В результате получаем полный путь в INI-файлу.

Что касается самих параметров, то, так как для небольших программ нет необходимости разбивать их на несколько разделов, то всех их пишу в раздел (параметр "lpAppName" ф-ии GetPrivateProfileString) с именем "SYSTEM". Но это не какое-то специальное особое имя. Использовать можно совершенно произвольное, на ваш вкус.
StIX
Сообщения: 20
Зарегистрирован: 13 фев 2011, 20:32
Откуда: Russian Federation
Контактная информация:

BulldozerBSG писал(а):Правда с функциями "GetPrivateProfileString() и др." есть маленькая особенность, если не указывать полный путь к файлу, то считается что он находится в каталоге Windows.
ну это не проблема. просто путь к файлу нужно указать так ".\\FileName.ini"
BulldozerBSG
Сообщения: 270
Зарегистрирован: 09 янв 2010, 04:14
Контактная информация:

StIX писал(а):ну это не проблема. просто путь к файлу нужно указать так ".\\FileName.ini"

Ну да... не проблема если рабочий каталог правильный, а то потом долго ломать голову будете почему файл есть, а данные не читаются.
Ответить