![]() |
wie bekomme ich den ordern: C:\Dokumente und Einstellungen..
moin jungs, wie bekomme ich dieses ordner ?
C:\Dokumente und Einstellungen\user\Anwendungsdaten also für den grade angemeldeten user ? danke euch |
Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
Hallo,
das ist die Umgebungsvariable %appdata%, wie man da rankommt, sollte im Forum irgendwo stehen, sonst: ![]() Vielleicht kennt deine Delphiversion auch schon GetEnvironmentVariable. Gruß |
Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
danke für die schnelle antwort: ich poste das nochnmal !
Delphi-Quellcode:
function GetEnvVarValue(const VarName: string): string;
var BufSize: Integer; // buffer size required for value begin // Get required buffer size (inc. terminal #0) BufSize := GetEnvironmentVariable(PChar(VarName), nil, 0); if BufSize > 0 then begin // Read env var value into result string SetLength(Result, BufSize - 1); GetEnvironmentVariable(PChar(VarName), PChar(Result), BufSize); end else // No such environment variable Result := ''; end; procedure TForm1.Button1(Sender: TObject); begin ShowMessage(GetEnvVarValue('APPDATA')); end; |
Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
Die API-Version sollte zuverlässiger sein, denke ich.
|
Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
Die JCL enthaelt dazu die Funktion GetAppdataFolder in JclSysInfo.pas.
Die Environmentstrings bekommt ein Programm immer von dem es startenden Programm uebergeben. Da kann das Environment beliebig beschnitten sein. |
Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
Zitat:
|
Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
Zitat:
Delphi-Quellcode:
function GetShellFolder(CSIDL: integer): string;
var pidl : PItemIdList; FolderPath : string; SystemFolder : Integer; Malloc : IMalloc; begin Malloc := nil; FolderPath := ''; SHGetMalloc(Malloc); if Malloc = nil then begin Result := FolderPath; Exit; end; try SystemFolder := CSIDL; if SUCCEEDED(SHGetSpecialFolderLocation(0, SystemFolder, pidl)) then begin SetLength(FolderPath, max_path); if SHGetPathFromIDList(pidl, PChar(FolderPath)) then begin SetLength(FolderPath, length(PChar(FolderPath))); end; end; Result := FolderPath; finally Malloc.Free(pidl); end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:47 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