Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi wie bekomme ich den ordern: C:\Dokumente und Einstellungen.. (https://www.delphipraxis.net/89546-wie-bekomme-ich-den-ordern-c-%5Cdokumente-und-einstellungen.html)

agm65 2. Apr 2007 08:41


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

verwirrt 2. Apr 2007 08:45

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:

http://www.swissdelphicenter.ch/torr...de.php?id=2277

Vielleicht kennt deine Delphiversion auch schon GetEnvironmentVariable.

Gruß

agm65 2. Apr 2007 08:49

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;

Luckie 2. Apr 2007 09:03

Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
 
Die API-Version sollte zuverlässiger sein, denke ich.

Robert Marquardt 2. Apr 2007 09:12

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.

toms 2. Apr 2007 09:32

Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
 
Zitat:

Zitat von Luckie
Die API-Version sollte zuverlässiger sein, denke ich.

Wie wärs mit SHGetSpecialFolderPath & CSIDL_APPDATA ?

Luckie 2. Apr 2007 09:49

Re: wie bekomme ich den ordern: C:\Dokumente und Einstellung
 
Zitat:

Zitat von toms
Zitat:

Zitat von Luckie
Die API-Version sollte zuverlässiger sein, denke ich.

Wie wärs mit SHGetSpecialFolderPath & CSIDL_APPDATA ?

Genau jene meinte ich. ;)
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 11:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz