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

Вниз

I/O error 32   Найти похожие ветки 

 
Дилетант   (2004-06-27 16:37) [0]

Многоуважаемые Мастера. Бьюсь над таким вопросом:

AssignFile (wf, "armlocal.cfg");
AssignFile (ni, "number.id");
{I-}
Rewrite (wf);
{I+}
if IOResult=0 then Rewrite (ni);

В четвёртой строчке этого кусочка возникает I/O Error 32.
Я действительно открывал эти файлы раньше, но во-первых я же их и корректно закрывал, да и Rewrite должен в случае чего сначала закрыть файлы. Верю что ошибка у меня примитивная, но за помощь буду очень благодарен.


 
raidan   (2004-06-27 16:41) [1]

Тип файла wf?


 
raidan   (2004-06-27 16:42) [2]

Попробуй rewrite(wf,1) если wf не text.


 
Дилетант   (2004-06-27 16:42) [3]

TextFile


 
raidan   (2004-06-27 16:48) [4]

Атрибуты файла - он не read-only?
После перезагрузки такая-же байда?
Чудес-то не бывает.


 
Дилетант   (2004-06-27 16:49) [5]

Тут причём такая хитрость. В прошлый раз эти физические файлы armlocal.cfg и number.id ассигновались с другими текстфайлами, но я их закрываю перед повторным вызовом. Причём при замене Rewrite на Reset (ради эксперимента) ошибка не возникает


 
Дилетант   (2004-06-27 16:51) [6]

Атрибуты не РидОнли, не скрытый, не системный.
А перезагрузиться - попробовал. Безрезультатно.


 
Дилетант   (2004-06-27 16:52) [7]

Да и что это вообще за ошибка ввода-вывода 32. Я не смог найти её в Хелпе Делфи. Там все описаные коды больше 100.


 
raidan   (2004-06-27 16:54) [8]

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


 
Дилетант   (2004-06-27 16:56) [9]

Но ведь в Делфи Хелп английским по жёлтому написано, что Rewrite сам должен закрыть файл, если он открыт. Так и что это за ошибка такая?


 
Anatoly Podgoretsky ©   (2004-06-27 17:07) [10]

Из справки
32L       ERROR_SHARING_VIOLATION


 
Дилетант   (2004-06-27 17:08) [11]

Т.е. ошибка доступа (по русски). Странно, а почему же тогда Reset не вызывает этой ошибки?


 
Дилетант   (2004-06-27 17:20) [12]

Спасибо raidan и Anatoly Podgoretsky ©. Подали идею. Да действительно нет доступа. Файл занимается побочным процесом. Исправил. Работает.
Перед закрытием ветки удовлетворите всё же моё любопытство - ПОЧЕМУ РАБОТАЛ RESET? Он же в принципе доступ получает так же как и REWRITE?


 
Anatoly Podgoretsky ©   (2004-06-27 17:23) [13]

Да получает через одно и тоже АПИ, но откуда следует, что тот же самый?


 
raidan   (2004-06-27 17:30) [14]

ReWrite сразу затирает содержимое файла ака пересоздает...
А Reset - нет.



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

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

Наверх




Память: 0.49 MB
Время: 0.053 c
9-1079372701
Servelat
2004-03-15 20:45
2004.07.11
Как выключить screensaver


14-1087797585
DimKa
2004-06-21 09:59
2004.07.11
Россия - Греция : 2-1


14-1087905831
3d_Vorpos
2004-06-22 16:03
2004.07.11
Как спроецировать точку на экран?


8-1083008938
Ramis Mamedov
2004-04-26 23:48
2004.07.11
HFont и шрифт


4-1086175515
Term
2004-06-02 15:25
2004.07.11
Скрытие процесса