Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: DLL mit Rio erstellt + in D2006 nutzen

  Alt 10. Apr 2019, 07:00
Oder man macht es wie MS und schreibt die Funktionen in beiden Varianten. In der DLL:
Delphi-Quellcode:
function MyFuncA(SomeParam: PAnsiChar): DWORD; stdcall;
function MyFuncW(SomeParam: PWideChar): DWORD; stdcall;

exports
  MyFuncA,
  MyFuncW;
Auf Programmseite schreibt man sich dann eine Importunit, die die zur Delphi-Version passende Funktion lädt:
Delphi-Quellcode:
// Import der zum Delphi passenden Version
function MyFunc(SomeParam: PChar): DWORD; stdcall; external 'MyDLL.dllname {$IFDEF UNICODE} 'MyFuncW{$ELSE} 'MyFuncA{$ENDIF};
Zu beachten: hier muss dann aber auch zwingend der Typalias PChar verwendet werden, sonst ist das alles für die Füße.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat