Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.09;
Скачать: CL | DM;

Вниз

Help! Проблема с ini файлами.   Найти похожие ветки 

 
Torero   (2002-12-26 05:54) [0]

Написал я значит в своей проге такие строчки:
{var IllsIniFile:TIniFile;}
IllsIniFile:=TIniFile.Create("ills.ini");
IllCount:=IllsIniFile.ReadInteger("Ills","IllCount",-1);
if IllCount=-1 then
begin
Illcount:=1;
IllsIniFile.WriteInteger("Ills","IllCount",1);
end;
IllsIniFile.Free;
Компилирую... Access volation at address * in module "med.exe". Read of address *.
Глюк точно в этих строчках. Может переменную создал неправильно? Если с кодом все в порядке, может какие-нибудь директивы посоветуете. Что самое интересное, этот баг проявляется не только в delphi 7, но и в delphi 6.


 
Slym   (2002-12-26 06:39) [1]

ТЫ уверен что ills.ini существует? И он в папке проги или в
%windir%?
Скорее всего от не находит файла и не создает IllsIniFile
Попробуй загнать код в try fin, хоть от виолатиона избавит

{var IllsIniFile:TIniFile;}
IllsIniFile:=TIniFile.Create("ills.ini");
TRY
IllCount:=IllsIniFile.ReadInteger("Ills","IllCount",-1);
if IllCount=-1 then
begin
Illcount:=1;
IllsIniFile.WriteInteger("Ills","IllCount",1);
end;
FINALLY
IllsIniFile.Free;
end;


 
Calm ©   (2002-12-26 09:19) [2]

Если файла не существует, то
IllsIniFile:=TIniFile.Create("ills.ini");
создаст его. Ошибка не в этом.


 
Lady D ©   (2002-12-26 09:24) [3]

uses Registry;
var RegIni: TRegIniFile; для win32


 
Kent ©   (2002-12-26 09:49) [4]

Довольно часто юзаю ini файлы, т.к. очень уж они удобны для хранения вского рода наборов данных. Но речь не о том. TIniFile.Create("bla-bla.ini") не создает файл, а создает указатель на экземпляр объекта TIniFile. Я поначалу тоже натыкался на такую ерунду. Избавился от этой гадости может и коряво и по дедовски, но мне так больше всего нравится :) !

var F: File;
Ini: TIniFile;
begin
AssignFile(F,"bla-bla.ini");
{$I-} Reset(F); {$I+}
if IOResult<>0 then ReWrite(F);
CloseFile(F);
Ini:=TIniFile.Create("bla-bla.ini");
// Делаем тута чо-нить !!! Пишем , читаем и т.д. !
Ini.Free;
end;

Конечно в идеале надо бы проверить значение IOResult и плясать от него дальше, но этот пример для случая, когда файл отсутствует.

Удачи !


 
Anatoly Podgoretsky ©   (2002-12-26 09:54) [5]

Откуда у тебя такие сведенья :-)


 
ironwit ©   (2002-12-26 09:56) [6]

по умолчанию ini файл создается в вин директории, есть ли у тебя разрешение туда что0нить писать?
попробуй это
inifile:=tinifile.create(changefileext(application.exename,".ini");

создашь файл в директории программы
сообщи плс, ибо пишу теоретически, сам не пробовал :-)


 
Anatoly Podgoretsky ©   (2002-12-26 10:08) [7]

ironwit © (26.12.02 09:56)
И потчи наверняка получит отлуп, так как вероятность того, что ему ззапрещено туда писать близка к максимальной

На моем сайте в Чаво из фидо есть статья "Как хранить настройки", настоятельно рекомендуется ее прочитать, прежде чем работать с ини файлами на платформе НТ


 
ironwit ©   (2002-12-26 10:16) [8]

Anatoly Podgoretsky © (26.12.02 10:08)
ironwit © (26.12.02 09:56)
И потчи наверняка получит отлуп, так как вероятность того, что ему ззапрещено туда писать близка к максимальной

не понял. Куда ему запрещено писать - в системную директорию или в дир.программы?


 
Anatoly Podgoretsky ©   (2002-12-26 10:35) [9]

И туда и туда, как правило


 
ironwit ©   (2002-12-26 10:37) [10]

не понял, он же смог записать свою программу в какой-то каталог? почему он там не может еще записать один файл. Или я плохо знаю ХР?


 
Anatoly Podgoretsky ©   (2002-12-26 10:48) [11]

Право на инсталляцию программ принадлежит администратору.
Еще раз прочитай статью, а то чувствуется, что ты не представляешь работу системы безопасности и идеолгоию Win XP



Страницы: 1 вся ветка

Текущий архив: 2003.01.09;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.016 c
14-25026
SV
2002-12-20 00:35
2003.01.09
Dot Net


1-24868
sancho
2002-12-27 22:53
2003.01.09
КАК


1-24853
Supreme
2002-11-29 17:28
2003.01.09
Загрука значка 16x16 в Image1


8-24986
BOA_KAA
2002-09-23 14:34
2003.01.09
Опять беда со скроллингом в TImage


3-24781
Влад2
2002-12-15 23:11
2003.01.09
Реакция TQuery на изменение TTable одной и той же БД