Einzelnen Beitrag anzeigen

Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#1

Übersetzung von GetSystemDefaultLocaleName von C nach Delphi

  Alt 28. Jul 2007, 21:35
Hi,

kann mir mal jemand bei der Übersetzung der Funktion MSDN-Library durchsuchenGetSystemDefaultLocaleName helfen? Ich will die Funktion aus der kernell32.dll dynamisch laden. Das Handle ist auch größer 0 und mit GetProcAdress bekomme ich Adresse, aber wenn ich die Funktion dann aufrufe bekomme ich nur japanische/chinesische Zeichen

Delphi-Quellcode:
function GetSystemLocaleName : string;
var po :TFarProc;
    DLLWnd :THandle;
    localeString : LPWStr;
    GetSystemDefaultLocaleName : function( var lpLocaleName : LPWStr;
                                            cchLocaleName : integer)
                                            : integer; stdcall;
begin
  Result := '';
  DLLWnd := LoadLibrary('kernel32');
  if DLLWnd > 0 then
  begin
    try
      po := GetProcAddress(DLLWnd, 'GetSystemDefaultLocaleName');
      if po <> nil then
      begin
        @GetSystemDefaultLocaleName := po;
        if GetSystemDefaultLocaleName(localeString, LOCALE_NAME_MAX_LENGTH) > 0 then
        Begin
          Result := localeString;
        End;
      end;
    finally
      FreeLibrary(DLLWnd);
    end;
  end;
end;
Wo hab ich Mist gemacht?

Ich sollte öfters mal wieder was mit Delphi machen, ist alles total eingerostet
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat