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

Вниз

Ошибка при попытке записи на read-only диск   Найти похожие ветки 

 
Ell ©   (2006-01-26 14:14) [0]

Программа при выходе должна записывать переменные в свою папку. Если же программа расположена на read-only носителе (например, CD или DVD), естественно, от попыток записи надо отказаться.

Пытаюсь сделать так:

 sc_readonly:=false;
 AssignFile(f, CFGFile);
 Rewrite(f);
 try
   BlockWrite(f,GrayDays,1);
 except
   sc_readonly:=true;
 end;
   if not sc_readonly then
   begin
     BlockWrite(f,FullMode,1);
     BlockWrite(f,Marked1Y,2);BlockWrite(f,Marked1M,1);BlockWrite(f,Marked1D,1);
     BlockWrite(f,Marked2Y,2);BlockWrite(f,Marked2M,1);BlockWrite(f,Marked2D,1);
   end;
 CloseFile(f);


Записал на диск, запустил. При закрытии программы (записать данные она всё же пытается!), сообщение "File access denied" и приходится закрывать только через "Диспетчер задач".
Что делаю неправильно? Наверное, чего-то не хватает между except и end;?


 
Fay ©   (2006-01-26 14:19) [1]

{$I-} ?


 
stone ©   (2006-01-26 14:25) [2]

Rewrite(f) перенеси после try


 
Ell ©   (2006-01-26 14:48) [3]

> stone ©   (26.01.06 14:25) [2]
> Rewrite(f) перенеси после try


Я перед тем, как задать вопрос пробовал Rewrite(f); поместить между try и except, а  BlockWrite(f,GrayDays,1); - к остальным BlockWrite. Выдаётся сообщение, что-то вроде: "I/O error 103"


 
Desdechado ©   (2006-01-26 15:35) [4]

http://delphimaster.net/view/1-1138092905/



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

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

Наверх




Память: 0.47 MB
Время: 0.056 c
11-1118647887
konst
2005-06-13 11:31
2006.02.12
Работа со статусной строкой


6-1131143339
Sysanin
2005-11-05 01:28
2006.02.12
ServerSocket ошибка при отправке


4-1133293119
Vadimka
2005-11-29 22:38
2006.02.12
Как подвинуть рабочий стол и ярлыки на нем?


1-1137241222
Gear
2006-01-14 15:20
2006.02.12
ListBox и прокрутка вниз.


2-1138280829
Trilon1
2006-01-26 16:07
2006.02.12
EOleException