Zitat von
Unit Windows:
Delphi-Quellcode:
function GetProcAddress(hModule: HMODULE; lpProcName: LPCSTR): FARPROC; stdcall; overload;
function GetProcAddress(hModule: HMODULE; lpProcName: LPCWSTR): FARPROC; stdcall; overload; // das ist eine überladene Version vom Delphi, welche das in einen AnsiString umwandelt und weitergibt.
Fazit: Man kann also problemlos durchgehend mit String und PChar arbeiten.
Das hättest du aber auch selber nachsehen/ausprobieren können
Öhm, in meiner D2009-Doku finde ich das nicht, da ist nix overload:
Code:
GetProcAddress
Retrieves the address of an exported function or variable from the specified dynamic-link library (
DLL).
FARPROC
WINAPI GetProcAddress(
HMODULE hModule,
LPCSTR lpProcName
);
weder in der
API-Doku noch im CodeInsight.
@TiGü: das ist eine D6-Wrapper-
dll, die auf eine CAN-
dll zugreift. Zur Abwärtskompatibilität hat der Lieferant eine eigene Wrapper-
dll zur Verfügung gestellt. Also von hinten durch die Brust ins Auge. Funzt aber mit dem Delphi-Testprogramm. Das Benutzerprogramm ist aber in LabView geschrieben und da läuft die
dll nicht unter Win7/64. Da LabView nur
Ansi und 32 bit kann bin ich auf der Suche nach der Ursache. Und da kommen die Aufrufe und Übergaben recht schnell in den Focus.
Vielleicht gibt es ja noch andere Unterschiede beim
dll-Aufruf zwischen XP und Win7/64
Grüße, Messie