Текущий архив: 2003.08.28;
Скачать: CL | DM;
Вниз
Не обрабатываются ИС! В чем дело? Найти похожие ветки
← →
mfender (2003-08-15 13:13) [0]Товарищи!
Пишу вот такую примерно конструкцию:
try
Table.Post;
except
on E : EDBEngineError do
if E.Message = "Key violation" then
begin
MessageDlg ("Ошибка", mtError, [mbOk], 0);
Table.Cancel;
end
end;
Почему-то оно мне выдает пресловутое EDBEngineError, но никак не обрабатывается в желаемом направлении. Или я дурак, или одно из двух. Что делать, прмо голову уже надломил свою. Стреляться?
← →
Skier (2003-08-15 13:15) [1]>mfender (15.08.03 13:13)
> Почему-то оно мне выдает пресловутое EDBEngineError, но
> никак не обрабатывается в желаемом направлении
1) Запусти не из под Delphi
2) Это условиеE.Message = "Key violation"
точно выполняется ?
← →
PVOzerski (2003-08-15 13:16) [2]1) А не из-под IDE ли работает прога, когда выдает EDBEngineError? И как IDE настроена с точки зрения exception"ов?
2) А вывести содержимое любого E.Message в окошко не пробовали?
← →
still (2003-08-15 13:16) [3]А ты уверен что именно так E.Message = "Key violation"?
Попробуй проверять не на точное соответствие
Pos("Key violation", E.Message) > 0
← →
mfender (2003-08-15 13:16) [4]Да. Точно. Запускаю уде компиленный exe - ОН мне "Key violation"
← →
mfender (2003-08-15 13:18) [5]1) А не из-под IDE ли работает прога, когда выдает EDBEngineError? И как IDE настроена с точки зрения exception"ов?
2) А вывести содержимое любого E.Message в окошко не пробовали?
Нельзя ли расшифровать?
← →
Шёл мимо (2003-08-15 13:32) [6]Чтобы локализовать ошибку, можно попробовать так:
try
Table.Post;
except
MessageDlg ("Ошибка", mtError, [mbOk], 0);
Table.Cancel;
end
end;
И не забыть Skier © (15.08.03 13:15) [1]
1) Запусти не из под Delphi
т.е. скомпилированный модуль
← →
PVOzerski (2003-08-15 13:36) [7]2mfender: 1) IDE может отлавливать ИС даже из-под try. Для удобства программера. В D6 это в Tools/Debugger options.
2) Видимо, Вы это уже сделали.
← →
mfender (2003-08-15 13:39) [8]Вот только что в целях общего образования задал ему такую порчу:
A:=10;
D:=0;
A:=A div D;
Что он мне должен сказать на это? Молчит, гадюка.
Что же предпринять? Может чего-то надо донастроить?
← →
jel (2003-08-15 14:04) [9]
> mfender (15.08.03 13:39) [8]
А Application.onException не перекрыт часом?
← →
Andrey007 (2003-08-15 14:14) [10]А может, лучше так?
try
Table.Post
except
on E: Exception do
begin
ShowMessage(E.Message);
Table.Cancel
end
end;
Страницы: 1 вся ветка
Текущий архив: 2003.08.28;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.006 c