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

Вниз

Подвисание при обращениии по несущ. адресу.   Найти похожие ветки 

 
FZ*XupypG ©   (2003-05-04 01:57) [0]

При сохранении файла на компьютер в локальной сети используется SaveToFile. При этом, если компьютер перезагружается или ещё что-то, происходит зависание, иногда навсегда... Существует ли способ обеспечить корректную обработку такого случая и недопустить зависание программы? Стандартные блоки try\finl\exc здесь неработают. Также бесполезно проверять доступность компьютера, т.к. он может начать перезагр во время сохранения файла.


 
Great_Lesh   (2003-05-04 07:37) [1]

Хоть бы кусочек кода дал + посмотрелбя, на какой строчке зависает и указал в коде комментарием, а то не совсем понятно, о чем идет речь. Попробуем помочь!


 
FZ*XupypG ©   (2003-05-07 02:01) [2]

На форме есть RichEdit. Текст из него сохраняю так
RichEdit1.lines.savetoFile("\\SomeComp\c\temp\");
И вот в момент сохранения целевой компьютер начинает перезагружаться. При этом программа начинает тормозить и зависает намертво. Как обойти зависание программы в таком случае?


 
Verg ©   (2003-05-07 09:07) [3]

Боюсь, что для общего случая никак.
Единственный способ - это отказаться от SaveToFile на сетевую шару, а использовать Win Api overlapped IO. Правда, на 9x работать не будет.
Зато можешь прервать операцию и/или использовать таймауты.


 
FZ*XupypG ©   (2003-05-08 02:17) [4]

2Verg
Хорошо. Тогда как прервать оперцию или использовать таймаут?


 
Verg ©   (2003-05-08 11:21) [5]

Ну, я же тебе говорю - используй overlapped IO и у тебя появится свобода маневра.
Стандартные делфийные reset/rewrite не позволяют использовать такого сорта ввод/вывод, поэтому придется savetofile сделать в файл на локальном диске, а затем используя Win Api возможности по overlapped перекачать этот файл на сетевую шару.



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

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

Наверх




Память: 0.48 MB
Время: 0.013 c
14-44880
___Nikolay
2003-06-26 06:11
2003.07.14
Бесплатный интернет для жителей СНГ


14-44855
Санек
2003-06-27 07:29
2003.07.14
Базы данных


1-44695
Dmitriy M. Volkov
2003-06-29 11:42
2003.07.14
неск. строк в TLabel


7-44927
ND
2003-05-04 14:32
2003.07.14
Помогите удалить запись в реестре.


1-44681
Alles
2003-06-30 16:38
2003.07.14
русский - автомат