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

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
1-71746
Broot
2003-09-10 10:42
2003.09.22
Разбиение строкИ на стрОки


6-71798
Jao
2003-06-30 16:36
2003.09.22
Сокеты. Посылка файла посредстом TcpClient и TcpServer


4-72004
Andre
2003-07-05 03:28
2003.09.22
Прозрачный рисунок


3-71476
Иванов Сергей
2003-09-02 01:35
2003.09.22
ошибка connection lost to database


3-71484
rosl
2003-09-02 04:38
2003.09.22
сортировка Query