Полезное для программистов:

Фриланс
Новости
Статьи
   
Рубрики:


Проблемы ini-файла

Поиск:
Кто-нибудь имел какие-нибудь проблемы при использовании модуля TIniFile? Я думаю здесь какая-то детская проблема с кэшированием!!!

Вот что я делал:


Код

(* c:\test.ini уже существует *)
myIni := TIniFile.Create('c:\test.ini');
With myIni do
begin
 // .... (добавляем новую секцию в test.ini
end;
myIni.Free;
RenameFile('c:\test.ini', 'c:\test1.ini');



Что я получил:

test1.ini НЕ ИМЕЕТ добавленной мною секции;
всякий раз при создании или открытии нового файла в том же самом каталоге с помощью File Manager, 'c:\test.ini' появляется вновь, и у него СУЩЕСТВУЕТ секция, которую я добавлял.
Я решил эту проблему добавлением следующей строки перед IniFile.Free:


WritePrivateProfileString(nil, nil, nil, PChar(IniFileName));


Для получения дополнительной информации обратитесь к электронной справке к разделу 'WritePrivateProfileString'

Автор: Tony Chang


--------------------------------------------------------------------------------

Как указать системе на необходимость сбросить буфер INI-файла на диск

Код

procedure FlushIni(FileName: string);
var
 {$IFDEF WIN32}
 CFileName: array[0..MAX_PATH] of WideChar;
 {$ELSE}
 CFileName: array[0..127] of Char;
 {$ENDIF}
begin
 {$IFDEF WIN32}
 if (Win32Platform = VER_PLATFORM_WIN32_NT) then
   WritePrivateProfileStringW(nil, nil, nil, StringToWideChar(FileName,
   CFileName, MAX_PATH))
 else
   WritePrivateProfileString(nil, nil, nil, PChar(FileName));
 {$ELSE}
 WritePrivateProfileString(nil, nil, nil, StrPLCopy(CFileName,
 FileName, SizeOf(CFileName) - 1));
 {$ENDIF}
end;
Автор: DRKB
Сайт: http://delphiworld.narod.ru






Просмотров: 2004

 

 

Новые статьи:


Популярные:
  1. Как сделать цикличным проигрывание MIDI-файла?
  2. Создание AVI файла из рисунков
  3. Как устройство "отключить в данной конфигурации"?
  4. Kто в данный момент присоединен через Сеть?
  5. Как узнать количество доступной памяти?
  6. Как реализовать в RichEdit разноцветный текст?
  7. Как скрыть свое приложение от ProcessViewer
  8. Как программно нажать/скрыть/показ кнопку "Start"?
  9. Модуль работы с ресурсами в PE файлах
10. Функции вызова диалоговых окон выбора
11. Проверка граматики средствами Word'а из Delphi.
12. Модуль для упрощенного вызова сообщений
13. Функции для записи и чтение своих данных в, ЕХЕ- файле
14. Рекурсивный просмотр директорий
15. Network Traffic Monitor
16. Разные модули
17. Универсальная функция для обращения к любым экспортируем функциям DLL
18. Библиотека от VladS
19. Протектор для UPX'а
20. Еще об ICQ, сообщения по контакт листу?
21. Использование открытых интерфейсов
22. Теория и практика использования RTTI
23. Работа с TApplication
24. Примеры использования Drag and Drop для различных визуальных компонентов
25. Что такое порт? Правила для работы с портами
26. Симфония на клавиатуре
27. Загрузка DLL
28. Исправление автоинкремента
29. Взаимодействие с чужими окнами
30. Проверить дубляжи в столбце


 

 

 
 
На главную