Текущий архив: 2003.07.17;
Скачать: CL | DM;
ВнизКак создать ini файл больше 64Кбайт? Найти похожие ветки
← →
electric (2003-07-03 14:57) [0]Как создать ini файл больше 64Кбайт? И, соответственно, прочитать его.
← →
MBo (2003-07-03 15:13) [1]В Вин9Х - не положено.
← →
electric (2003-07-03 15:24) [2]Что значит не положено? А как быть тогда? Есть какие-нибудь ещё способы это обойти?
← →
Smithson (2003-07-03 15:25) [3]TagIniFile - это компонент.
Ыщщы
← →
electric (2003-07-03 15:58) [4]TagIniFile сложно найти , только увидел описание его
← →
Карелин Артем (2003-07-03 16:11) [5]Нифига, надо просто все ссылки на сайтах с этим компонентом перебрать. http://aghost.da.ru/- найдено за 1 минуту чисто по названию.
← →
гончий (2003-07-03 16:11) [6]Degisy TDataFile - бесплатный pas-модуль реализующий класс TDataFile - полный аналог TIniFile только без ограничений на размер файла и сохраняемых в нем данных. Много дополнительных методов. Загрузить можно здесь (4 Kb):
http://www.degisy.com/download.php?lang=rus
← →
Serginio (2003-07-03 16:15) [7]Извините, а где ограниечение в TIniFile или THashedStringList ограничение на 64 кб может у меня с глазами, что. Буду признателен за разъяснения.
← →
electric (2003-07-03 16:20) [8]Serginio ну не просто же так я здесь развел беседу
← →
electric (2003-07-03 16:22) [9]гончий так я нашёл подобную ссылку на TagIniFile но на сам компонент ссылки НЕТУ
← →
гончий (2003-07-03 16:28) [10][b]2 electric[/b]: на той страничке, что я дал в самом низу есть DataFile - его и скачай, пропиши в uses DataFile и пользуйся на здоровье! Компонент протестирован в течении почти 3-х лет несколькими тысячами пользователей. Замечаний по работе не поступало уже года два :)
← →
electric (2003-07-03 16:30) [11]гончий ПРЕМНОГОБЛАГОДАРЕН
← →
гончий (2003-07-03 16:33) [12]Не за что! Будут вопросы - пиши на мыло! Хотя все там очень просто, работаешь как с обычным Ini, только вместо TIniFile ставишь TDataFile.
← →
Serginio (2003-07-03 16:39) [13]2(electric) Я прошу ткнуть носом в изходники, а то со зрением у меня плохо. Ограничение на строку
function TIniFile.ReadString(const Section, Ident, Default: string): string;
Buffer: array[0..2047] of Char;
Ограничение на секцию
нашел
TIniFile.ReadSections(Strings: TStrings); и
TIniFile.ReadSection(const Section: string; Strings: TStrings);
BufSize = 16384;
Ограничения на файл не нашел
Но значит GetPrivateProfileString имеет ограничения.
← →
гончий (2003-07-03 16:50) [14]Эксперимент (WIN98SE):
----------------------
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
Ini: TIniFile;
begin
Ini := TIniFile.Create("C:\test.ini");
for I := 1 to 100000 do
begin
Ini.WriteString("AAA", "AAA"+IntToStr(I), IntToStr(100000-I));
end;
Ini.Free;
end;
-----------------------
Процедура вывалилась на 95560 цикле, когда размер файла стал равен 65500 байт. Ini-файлы - наследие 16-и разрядной WIN OS
← →
Serginio (2003-07-03 16:58) [15]Разобрался внутри IniFile использует
function WritePrivateProfileString; external kernel32 name "WritePrivateProfileStringA";
и
function GetPrivateProfileString; external kernel32 name "GetPrivateProfileStringA";
Они и не дают. Видно борланд решил оставить для совместимости.
Хотя пропарсить не такая уж большая проблема.
← →
Anatoly Podgoretsky (2003-07-03 17:00) [16]Serginio (03.07.03 16:15)
В исходниках VCL конечно нет ограничений, поскольку это ограничения ОС, вот эти исходники надо и смотреть или читать руководящии документы.
← →
icWasya (2003-07-03 18:20) [17]>Видно борланд решил оставить для совместимости.
Именно для совместимости. Если будете писать в WIN.INI, то нужно пользоваться именно стандартным TIniFile.
← →
Serginio (2003-07-03 18:26) [18]Еще раз спасибо. Глаза уже открылись.
Страницы: 1 вся ветка
Текущий архив: 2003.07.17;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.009 c