walito
26-09-2006, 17:52:13
Hola gente, tengo un problema al implementar una callback.
Les cuento lo que tengo para ver si alguien me puede decir si le escape a algo:
1) Tengo hecho en Visual C++ una DLL , tengo ahi una funcion a la cual por parametro le paso una callback, esa DLL me deberia retornar un numero '1234' pero me retorna cualquier numero 1231231.
2) la definicion es:
type
TCallBack = function(Num: integer): boolean of object;
...
public
{ Public declarations }
function Micallback(Num: integer):boolean;
...
{*llamada a la func de la dll*}
procedure fnCallbacktest(Pfunc: PTCallBack); cdecl; external 'callbacktest.dll';
...
function TForm1.callback(Num: integer):boolean;
begin
showmessage(inttostr(Num));
result := true;
end;
procedure TForm1.Button18Click(Sender: TObject);
begin
fnCallbacktest(callback);
end;
Ese seria el ejemplo, aparte tambien estube leyendo que hay gente que cuando usa callback les tira error de memoria, yo tambien tengo esos problemas, es decir la callback se ejecuta bien, pero cuando llega al final (end;) da error de memoria
. La verdad que no encontre mucha info al respecto.
Tengo el mismo problema que este link http://www.clubdelphi.com/foros/showthread.php?t=20838&highlight=callback
Alguien tiene alguna idea? desde ya le agradeceria.
Les cuento lo que tengo para ver si alguien me puede decir si le escape a algo:
1) Tengo hecho en Visual C++ una DLL , tengo ahi una funcion a la cual por parametro le paso una callback, esa DLL me deberia retornar un numero '1234' pero me retorna cualquier numero 1231231.
2) la definicion es:
type
TCallBack = function(Num: integer): boolean of object;
...
public
{ Public declarations }
function Micallback(Num: integer):boolean;
...
{*llamada a la func de la dll*}
procedure fnCallbacktest(Pfunc: PTCallBack); cdecl; external 'callbacktest.dll';
...
function TForm1.callback(Num: integer):boolean;
begin
showmessage(inttostr(Num));
result := true;
end;
procedure TForm1.Button18Click(Sender: TObject);
begin
fnCallbacktest(callback);
end;
Ese seria el ejemplo, aparte tambien estube leyendo que hay gente que cuando usa callback les tira error de memoria, yo tambien tengo esos problemas, es decir la callback se ejecuta bien, pero cuando llega al final (end;) da error de memoria
. La verdad que no encontre mucha info al respecto.
Tengo el mismo problema que este link http://www.clubdelphi.com/foros/showthread.php?t=20838&highlight=callback
Alguien tiene alguna idea? desde ya le agradeceria.