Вниз
Скачать: CL | DM;

Почему не срабатывает try...except?   Найти похожие ветки 

← →
_Vox_   (2005-11-01 16:11) [0]

Конструкция вида

try
LoadLibrary(Lib);
except
...
end;

когда библиотека испорчена вылезает системное сообщение о неправильном образе DLL и в отбработчик except просто не попадает. В чем проблема???


← →
Sergey_Masloff   (2005-11-01 16:15) [1]

Из под среды небось запускаешь?


← →
Digitman ©   (2005-11-01 16:20) [2]


> В чем проблема


в том что WinAPI-ции НЕ возбуждают никакие Делфи-исключения, ибо ничего не знают о них и знать НЕ обязаны.


← →
_Vox_   (2005-11-01 16:24) [3]

>>Sergey_Masloff Первое что попробовал, запустить не из среды, не помогло.
>>Digitman © Проблема в том, чтобы отработать эту ошибку самому.
Подскажите пожалуйста...


← →
Leonid Troyanovsky ©   (2005-11-01 16:30) [4]


> _Vox_   (01.11.05 16:11)  

> когда библиотека испорчена вылезает системное сообщение
> о неправильном образе DLL и в отбработчик except просто
> не попадает. В чем проблема???


Это сообщение загрузчика.
Если хочешь, чтобы ситуацию обрабатывал твой процесс -
пользуй SetErrorMode, RTFM.

--
Regards, LVT.


← →
Digitman ©   (2005-11-01 16:32) [5]

try
 WinCheck(LoadLibrary(...));
except
on E:EOSError do
  case ErrorCode of
   такой_то_код_отказа:  такие_товои_действия:
   ...
  end;
end;


← →
Leonid Troyanovsky ©   (2005-11-01 16:35) [6]


> Digitman ©   (01.11.05 16:32) [5]

>  WinCheck(LoadLibrary(...));


WinCheck(LoadLibrary() <> 0);
& [4] ;)

--
Regards, LVT.


← →
_Vox_   (2005-11-01 16:36) [7]

О, все ок, БОЛЬШОЕ СПАСИБО!


← →
_Vox_   (2005-11-01 16:54) [8]

Хм, это опять я. С SetErrorMode все работает. Он вариант с WinCheck кажется по-приятней. Но объясните мне, дураку, тогда, где этот WinCheck находится - ни компилятор ни справка по Windows SDK вообще ничего о нем не знают???


← →
begin...end ©   (2005-11-01 16:56) [9]

> _Vox_   (01.11.05 16:54) [8]

Win32Check


← →
_Vox_   (2005-11-01 16:57) [10]

Мля, точно дурак. Сорри...



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
9-1121621915
DR0N
2005-07-17 21:38
2005.11.27
Как посмотреть дефолтовые значения источника света в OpenGl?


4-1127474961
вп
2005-09-23 15:29
2005.11.27
Запись CD-R/RW в XP


5-1113173273
Бывший студент
2005-04-11 02:47
2005.11.27
Колонки TStringGrid


11-1107971012
Лёля
2005-02-09 20:43
2005.11.27
Пример для KOLWord


1-1131018577
dj0n
2005-11-03 14:49
2005.11.27
ограничение ввода на Edit




   Наверх