![]() |
Problem mit ShellFolder -> CSIDL_APPDATA; CSIDL_LOCAL_AP
Problem mit ShellFolder -> CSIDL_APPDATA und CSIDL_LOCAL_AP liefern beide nur den Anwendungsdaten-Ordner des angemeldeten Users...
Ich verwende folgende Funktion (ist eigentlich von Luckie ;));
Delphi-Quellcode:
BEIDE Aufrufe, liefern mir den lokalen Application Pfad:
function GetShellFolder(CSIDL: integer): string;
var pidl: PItemIdList; FolderPath: string; SystemFolder: Integer; begin SystemFolder := CSIDL; if SUCCEEDED(SHGetSpecialFolderLocation(0, SystemFolder, pidl)) then begin SetLength(FolderPath, max_path); if SHGetPathFromIDList(pidl, PChar(FolderPath)) then begin SetLength(FolderPath, strlen(PChar(FolderPath))); end; end; Result := FolderPath; end;
Delphi-Quellcode:
Momentan habe ich folgenden Workaround:
GetShellFolder(shlobj.CSIDL_APPDATA);
GetShellFolder(shlobj.CSIDL_LOCAL_APPDATA);
Delphi-Quellcode:
Ich wüsse allerdings schon ganz gern, wo der eigentliche Fehler ist... Ich kann mir kaum vorstellen, dass hier die API selbst fehlerhaft ist, dann wohl eher die entspr. Kapselung in Delphi. :gruebel: :roll:
...
function GetUser: string; var Buffer: array[0..MAX_COMPUTERNAME_LENGTH + 1] of Char; Size: DWord; begin Size := Pred(SizeOf(Buffer)); Windows.GetUserName(Buffer, Size); Result := StrPas(Buffer); end; begin Result := GetShellFolder(CSIDL_APPDATA); Result := StringReplace(Result, '\' + GetUser + '\', '\All Users\', []); ... |
Re: Problem mit ShellFolder -> CSIDL_APPDATA; CSIDL_LOCAL
Das sollte bestimmt auch CSIDL_COMMON_APPDATA heißen?
|
Re: Problem mit ShellFolder -> CSIDL_APPDATA; CSIDL_LOCAL
Zitat:
[EDIT]Ich habs gerade bie Luckie gefunden ;)
Delphi-Quellcode:
:wall: :dancer:
const
CSIDL_COMMON_APPDATA = $0023; |
Re: Problem mit ShellFolder -> CSIDL_APPDATA; CSIDL_LOCAL
Moin FriFra,
Zitat:
Zitat:
Besorg' Dir mal das PSDK, inclusive der Headerdateien. Dann kannst Du solche Daten direkt dort nachschlagen/suchen, wo sie definiert sein müssen (müssten ;-)) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:44 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 by Thomas Breitkreuz