Einzelnen Beitrag anzeigen

menten

Registriert seit: 3. Apr 2009
41 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Lokalisierte Benutzerverzeichniss

  Alt 25. Sep 2024, 11:09
Moin,

und danke für die Hilfe.

das Problem ist, dass der OpenDialog mit dem lokalisierten Namen arbeitet, in den Einstellungen aber der physikalische Pfad steht. Wenn der Benutzer dann eine Datei öffnen will, landet er im Dokumenten-Ordner weil der OpenDialog den Pfad nicht findet.

Deine Funktion habe ich ausprobiert. Das funktionert, übersetzt aber nur den letzten Ordnernamen.

Ich habe es jetzt mal mit SHGetLocalizedName versucht. Das funktionirt aber nicht so wie ich es implementiert habe.

Delphi-Quellcode:
function GetLocalName(Path: string): string;
var
  wpNew: PWideChar;
  cch: UINT;
  pidsRes: integer;
  hr: HRESULT;
begin
  wpNew := StrAlloc(MAX_PATH);

  try
    FillChar(wpNew^, MAX_PATH, 0);
    cch := MAX_PATH;
    hr := SHGetLocalizedName(PWideChar(Path), wpNew, cch, pidsRes);
    if hr = 0 then
      result := wpNew
    else
      result := 'error';

  finally
    StrDispose(wpNew);
  end;

end;
Mache ich da was falsch?


Danke und
Gruß
Stefan Menten
Stefan
  Mit Zitat antworten Zitat