Hallo,
ich habe einige D6-DLL's die Funktionalität in Form von Callbacks an übergeordnete Programme exportieren.
Bsp.:
<PRE>
procedure On_Start(MyInstance:Longword; MyWnd:Longword; Avtive:BOOL ; MyDLL_ID :integer);cdecl;
procedure My_Proc( MyID : integer; MyLength :integer; var MyData);cdecl;
exports On_Start name 'On_Start';
implementation
procedure On_Start(MyInstance:Longword; MyWnd:Longword; Avtive:BOOL ; MyDLL_ID :integer);cdecl;
var i:integer;
begin
_MyInstance:=MyInstance;
_MyWindow:=MyWnd;
_MyDLL_ID:=MyDLL_ID;
SendMessage(_MyWindow,WM_USER,MY_CALLBACK,(LongWor d(@MyProc)));
end;
procedure My_Proc( MyID : integer; MyLength :integer; var MyData);cdecl;
var Buffer: PByteArray;
begin
Buffer:=@MyData;
// Do my datahandling
// .................
end;
</PRE>
Wird das in dieser Form problemlos unter D8 laufen ? Was mir noch nicht klar ist, ist wie die entsprechenden Exports an das übergeordnete Programm übergeben wird. Denn da ist ja nun das DOT.NET Framework "dazwischen".
Vielleicht hat jemand 'nen Link wo ich mich ein wenig dazu einlesen kann.
Gruss
stalle
ich habe einige D6-DLL's die Funktionalität in Form von Callbacks an übergeordnete Programme exportieren.
Bsp.:
<PRE>
procedure On_Start(MyInstance:Longword; MyWnd:Longword; Avtive:BOOL ; MyDLL_ID :integer);cdecl;
procedure My_Proc( MyID : integer; MyLength :integer; var MyData);cdecl;
exports On_Start name 'On_Start';
implementation
procedure On_Start(MyInstance:Longword; MyWnd:Longword; Avtive:BOOL ; MyDLL_ID :integer);cdecl;
var i:integer;
begin
_MyInstance:=MyInstance;
_MyWindow:=MyWnd;
_MyDLL_ID:=MyDLL_ID;
SendMessage(_MyWindow,WM_USER,MY_CALLBACK,(LongWor d(@MyProc)));
end;
procedure My_Proc( MyID : integer; MyLength :integer; var MyData);cdecl;
var Buffer: PByteArray;
begin
Buffer:=@MyData;
// Do my datahandling
// .................
end;
</PRE>
Wird das in dieser Form problemlos unter D8 laufen ? Was mir noch nicht klar ist, ist wie die entsprechenden Exports an das übergeordnete Programm übergeben wird. Denn da ist ja nun das DOT.NET Framework "dazwischen".
Vielleicht hat jemand 'nen Link wo ich mich ein wenig dazu einlesen kann.
Gruss
stalle
Comment