Warum gehst du nicht einfach den Weg über
COM, so wie das für deinen Fall vorgesehen ist?
.Net Lib:
Delphi-Quellcode:
namespace
DP.DelphiInterop;
interface
uses
System.Runtime.*;
type
[ClassInterface(ClassInterfaceType.AutoDual)]
Sample =
public class
public
property Miep :
String read '
Miep';
end;
implementation
end.
In Delphi als Type lib importiert, und dann noch eine
Unit mit type aliases um die ekligen
COM Namen zu verstecken:
Delphi-Quellcode:
unit uSample;
interface
uses
DP_DelphiInterop_TLB;
type
ISample = _Sample;
TSample = CoSample;
implementation
end.
So wird's benutzt (CoInitialize muss aber irgendwo in der App aufgerufen werden):
Delphi-Quellcode:
uses
uSample in 'uSample.pas';
var
sample : ISample;
begin
sample := TSample.Create();
Writeln(sample.Miep);
end.