Форум: "Основная";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];
ВнизActiveX и передача значений функции Найти похожие ветки
← →
qwerty2 (2003-09-09 18:01) [0]В ActiveX библиотеке объявлена такая функция: function MyFunction(const PARAM1, Param2, Param3: WideString;
num: Shortint): WideString; stdcall;
и в реализации этой функции:
...
result:="AAAA";
end;
при вызове этой функции
s:Widestring;
begin
MyObj:=TMyObj.create(nil);
s:=MyObj.MyFUnction("sc","sds","wdwd",1);
в переменной s содержится "". подскажите пожалуйста что я не так делаю.
← →
VMcL (2003-09-09 18:14) [1]Ошибка в 17-й строке.
← →
qwerty2 (2003-09-09 18:28) [2]Даже если оставить всего одну строку function MyFunction(const PARAM1, Param2, Param3: WideString;
num: Shortint): WideString; stdcall; begin result:="AAAA";
end;
при вызове этэ ф-я все равно возвращает "". если же заменить на
function MyFunction(const PARAM1, Param2, Param3: WideString;
num: Shortint): Intteger; stdcall; begin result:=100;
end;
то при вызове эта функция будет возвращать 0.
← →
VMcL (2003-09-09 18:40) [3]
MyObj:=TMyObj.create(nil);
?
← →
qwerty2 (2003-09-09 18:52) [4]VMcL © (09.09.03 18:40) [3]
Да действительно имено здесь и была проблема! при импорте tlb был как то так сгенерирован что даже не присутствовало
function CoMyobj.Create: IMyobj;
begin
Result := CreateComObject(CLASS_MyObj) as IMyObj;
end;
вместо этого сгенерировалось что то вроде
TMyObj.Create(Owner:TComponent);
begin
inherited create;
...
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.01 c