Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] INI файлы


Автор: Valery 18.11.2006, 04:07
Привет Всем.
Кто поможет новичку разобраться с проблемой. 
Для обмена данными я с большой частотой из 
Нескольких программ одновременно записываю:
    FIniFile := TIniFile.Create ('...');
    FIniFile.WriteString('INFORMATION FILE','...','...');
     ...
    FIniFile.Free;
и читаю
    FIniFile := TIniFile.Create ('...');
    inform := FIniFile.ReadString('INFORMATION FILE','...','');
     ...
    FIniFile.Free;
данные в одном и том же файле INI-формата.
Но через некоторое время почему то в содержимом файле кроме 
заложенных фиксированных строк ниже появляется и накапливаются 
количественно еще строки, являющиеся частичными копиями последних 
фиксированных одной, двух или трех строк. И таким образом файл 
разрастается по объему. Кто подскажет почему это безобразие 
происходит и как с этим бороться.

Автор: NaumLeNet 18.11.2006, 04:42
Прежде всего - для межпрограммного обмена советую выбрать иной вариант, нежели IniFiles. Вариантов много, все зависит от конкретной ситуации.

Относительно проблемы с накоплением "левых" данных в Ini - рекомендую все-таки перепроверить алгоритм.

Автор: Guedda 18.11.2006, 09:17
IniFiles созданы для того, чтобы хранить настройки и свойства программы. 
Для такого обмена лучше использовать какую либо базу данных. типа paradox, dBase и так далее.

Автор: Poseidon 18.11.2006, 20:31
Цитата(Valery @  18.11.2006,  04:07 Найти цитируемый пост)
Кто подскажет почему это безобразие 
происходит и как с этим бороться.
 Тут же все понятно...

Цитата(Valery @  18.11.2006,  04:07 Найти цитируемый пост)
с большой частотой из 
Нескольких программ одновременно 



Для обмена информациея между твоими программами я бы посоветовал копать в сторону SendMessage

Автор: fidres 19.11.2006, 11:39
да фигня! выше 64 кило всё равно не вылезит! ;)
может проще раскидать  по разным файлам некоторые потоки инфы?
 smile 

Автор: Guedda 19.11.2006, 12:19
Цитата(fidres @  19.11.2006,  11:39 Найти цитируемый пост)
выше 64 кило всё равно не вылезит! ;)

Ну это уже спорный вопрос, так как у меня помещалось порядка 200 КБ. Больше не тестировал.

Автор: Akella 20.11.2006, 09:43
Цитата(fidres @  19.11.2006,  11:39 Найти цитируемый пост)
да фигня! выше 64 кило всё равно не вылезит! ;)

это в Win98 было такое ограничение

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)