Некорректный подъем исключений из ActiveX
alexgold
Москва
FastScript 1.8, Delphi 6.
Используется ActiveX библиотека, в которой есть объект с методом TestMethod:
ss := x.TestMethod('qqq') нормально генерится исключение с нормальным
текстом 'Тестовая ошибка'. Если же то же самое вызвать таким же кодом из
скрипта, то выскакивает сообщение:
OLE Error 80020009: TestMethod.
Как получить нормальное сообщение об ошибке?
Используется ActiveX библиотека, в которой есть объект с методом TestMethod:
function TTestObject.TestMethod(const par1: WideString): WideString;
begin
ShowMessage('Передан параметр '+par1);
raise Exception.Create('Тестовая ошибка');
result := 'возврат';
end;
Код для вызова:
var x: Variant;
ss: string;
begin
x := CreateOleObject('TestLib.TestObject');
ss := x.TestMethod('qqq');
ShowMessage(ss);
end;
Если выполнить эту процедуру, скомпиленную в Delphi, то на вызовеss := x.TestMethod('qqq') нормально генерится исключение с нормальным
текстом 'Тестовая ошибка'. Если же то же самое вызвать таким же кодом из
скрипта, то выскакивает сообщение:
OLE Error 80020009: TestMethod.
Как получить нормальное сообщение об ошибке?