![]() |
Delphi-Version: 5
String Übergabe an DLL
Hallo zusammen,
ich habe gerade das folgende Problem... Ich habe eine DLL die den Druck von Etiketten übernimmt. An diese Datei wird unter anderem als String Wert eine Pfad Angabe übergeben (Speicherort der Layout Datei). Die DLL habe ich als letztes mit dem RAD Studio XE erstellt. Die DLL wird von einem Programm aufgerufen das ebenfalls mit dem RAD Studio XE aufgerufen wird, hier funktioniert alles wunderbar. Die DLL wird aber auch noch von einem Programm aufgerufen, welches mit der Delphi Version 2007 entwickelt wurde. Hier wird in der DLL die Pfad angabe auf einmal in asiatischen Schriftzeichen angezeigt... Hat jemand eine Idee woran das liegt und wie ich das Problem in den Griff bekomme? Wie gesagt, es werden ausschließlich String Variablen verwendet... |
AW: String Übergabe an DLL
Den Hinweistext beim Erstellen von DLL's der als Kommentar oben eingefügt wird kennst Du?
Bei 2007 <> XE triffst Du dann zusätzlich auf die AnsiString<>Unicode Problematik. |
AW: String Übergabe an DLL
Mach doch einfach jeweils 2 Varianten, eine für Ansi und eine für Unicode.
Delphi-Quellcode:
In einer Wrapper-Unit kannst Du das dann auf die jeweils passende Variante linken.
procedure SomeProcA(APath: PAnsiChar);
procedure SomeProcW(APath: PWideChar);
Delphi-Quellcode:
procedure SomeProc(APath: PChar); external DeineDLL name {$IFDEF UNICODE}'SomeProcW'{$ELSE}'SomeProcA'{$ENDIF};
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz