Einzelnen Beitrag anzeigen

storfi

Registriert seit: 1. Dez 2004
15 Beiträge
 
Delphi 5 Enterprise
 
#1

Funktionen aus .NET4-DLL in Delphi 5 aufrufen

  Alt 7. Sep 2011, 18:32
Hallo zusammen,

ich habe ein großes Projekt in Delphi 5 und muss über eine .NET-Klasse auf eine andere Anwendung zugreifen. Da ich das Projekt unmöglich auf eine höhere Delphi-Version hochziehen kann, war meine Idee, mit Visual Studio eine Klassenbibliothek auf .NET4 zu erstellen und die Funktionen in Delphi aus der DLL zu starten.

Für einen ersten Test habe ich eine neue Klassenbibliothek mit C# erstellt und den Aufruf einer einfachen Prozedur in Visual Studio erfolgreich getestet.
Dann habe ich den Aufruf der DLL in Delphi 5 so versucht:

Delphi-Quellcode:
procedure ...
var t_dllhandle: THandle;
    t_dllfunction: TFarProc;
    t_procedure: TdoHelloMsg;
begin
...
    t_dllhandle:=LoadLibrary(PChar(g_testdll));
    t_dllfunction:=GetProcAddress(t_dllhandle, 'doHelloMsg');
...
Das Handle bekomme ich noch ordnungsgemäß, aber dann ist t_dllfunction nach dem GetProcAddress() immer "nil".

Nun meine Frage:
Kann ich eine .NET-DLL überhaupt einfach so in Delphi 5 ansprechen?
Hat jemand evtl. eine andere Idee, ein Stück .NET4 in Delphi 5 ohne dieses COM-Interop zu starten?
Ich muss hier keine Daten austauschen, es geht nur um den Prozeduraufruf, um irgendwelche Aktionen in der .NET-Klasse auszulösen.

Vielen Dank,
Christian
Christian
  Mit Zitat antworten Zitat