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

Вниз

Сообщение ОС при обращении к недоступному диску   Найти похожие ветки 

 
saNat ©   (2005-09-14 01:44) [0]

Доброго времени суток (о:

Вот такой вопрос возник. Предположим я обращаюсь к несуществующему диску (A:\, например). При этом использую try...except. При этом ОС выводит сообщение о неготовности диска с вариантами "Продолжить/Повторить/Отменить" и затем обрабатывает секцию except (там мое сообщение о недоступности диска). Как убрать сообщение ОС?

С уважением, ЕВА


 
Fay ©   (2005-09-14 06:56) [1]

SetErrorMode ?


 
saNat ©   (2005-09-21 14:45) [2]

Делаю так:


Unit ConfigUnit;

Interface

Uses
Dialogs,Windows;

Type
TConfig=Record
 Host:String[128];
 Port:Byte;
End;

Function SetConfig(ConfigFilePath:String):Pointer;

Implementation

Function SetConfig(ConfigFilePath:String):Pointer;
Var
 ConfigFile:File of TConfig;
Begin
SetErrorMode(SEM_NOOPENFILEERRORBOX);
Assign(ConfigFile,"A:\demo.demo");
Try
 Reset(ConfigFile);
Except
 MessageDlg("Файл настроек отсутствует",mtError,[mbOk],0);
End;
Result:=Nil;
End;

End.


Сначала выскакивает сообщение "В устройстве нет диска. Вставьте диск в устройство А:" (Кнопки "Отмена","Повторить","Продолжить") и только после этого отрабатывается мое сообщение. Что не так?


 
GanibalLector ©   (2005-09-21 22:11) [3]


var
ConfigFile:File of Byte;
begin
 SetErrorMode(SEM_FAILCRITICALERRORS);
 try
   AssignFile(ConfigFile,"A:\demo.demo");
   Reset(ConfigFile);
   // and other
   CloseFile(ConfigFile);
 except
   MessageDlg("Файл настроек отсутствует",mtError,[mbOk],0);
 end;
end;


 
GanibalLector ©   (2005-09-21 22:12) [4]

P.S. Для проверки запусти не из IDE.


 
saNat ©   (2005-09-22 01:17) [5]


> Fay ©   (14.09.05 06:56) [1]

Спасибо за идею...

> GanibalLector ©   (21.09.05 22:11) [3]
>...
>  SetErrorMode(SEM_FAILCRITICALERRORS);

Правильное решение. Спасибо.

Так как делал я работало "не так" и вне IDE

Еще раз спасибо



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
14-1127569018
GanibalLector
2005-09-24 17:36
2005.10.16
ОБЗОР решений


2-1127321877
RiP
2005-09-21 20:57
2005.10.16
Как из строковой переменой посимвольно считать в массив типа real


14-1127713782
boriskb
2005-09-26 09:49
2005.10.16
В какой стране вам хотелось бы пожить?


2-1127322319
logan
2005-09-21 21:05
2005.10.16
Открытие файла...


2-1127214337
I231
2005-09-20 15:05
2005.10.16
beep