Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi C:\Doku. u. Einstellungen\<Benutzername>\Anwendungsdaten (https://www.delphipraxis.net/74243-c-%5Cdoku-u-einstellungen%5C-benutzername-%5Canwendungsdaten.html)

xZise 31. Jul 2006 11:16


C:\Doku. u. Einstellungen\<Benutzername>\Anwendungsdat
 
Wie erreiche ich den Ordner
"C:\Dokumente und Einstellungen\<Benutzername>\Anwendungsdaten"?

Daniel G 31. Jul 2006 11:20

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Indem du dir diesen Code anguckst. :wink:

xZise 31. Jul 2006 11:25

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Und woher bekomme ich nun Max_Path?

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); // <:=------------- hier


      if SHGetPathFromIDList(pidl, PChar(FolderPath)) then
      begin
        SetLength(FolderPath, length(PChar(FolderPath)));
      end;
    end;
    Result := FolderPath;
  finally
    Malloc.Free(pidl);
  end;
end;

Daniel G 31. Jul 2006 11:31

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
MAX_PATH ist eine Konstante. Ich glaube, der Wert ist 256 oder 512...

xZise 31. Jul 2006 11:33

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Wo ist diese Konstate deklariert?

kabuco 31. Jul 2006 11:36

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Hallo,

du könntest auch die Umgebungsvariablen mit GetEnvironmentVarable auslesen.. Hierzu diser Link: Link

Gruß kabuco

Bernhard Geyer 31. Jul 2006 11:36

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Zitat:

Zitat von xZise
Wo ist diese Konstate deklariert?

Solche Konstanten bekommt man - wenn sie in den Delphi-Sourcen definiert sind:

Einfach im Explorer den Delphi-Sourcepfad öffnen und mit Explorer in Pas-Dateien suchen ...
Oder GExpert installieren und mit Grep suchen.

freak4fun 31. Jul 2006 11:38

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Zitat:

Zitat von xZise
Wo ist diese Konstate deklariert?

Windows ;)

xZise 31. Jul 2006 11:42

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Und wie lautet der Übergabeparameter?
Delphi-Quellcode:
Showmessage(GetEnvironmentVariable(Parameter));
Das habe ich mit Parameter getestet:
  • appath
    apppath
    appdir
    appdate
Und zwar mit und ohne die % vor und dahinter

CalganX 31. Jul 2006 11:46

Re: C:\Doku. u. Einstellungen\<Benutzername>\Anwendung
 
Hi,
ich würde es mit den Konstanten, die im Code auf Luckies Seite (Link oben), versuchen.

Ansonsten, reicht es auch innerhalb der DP ein wenig zu suchen (z.B. der Code-Library): http://www.delphipraxis.net/internal_redirect.php?t=502

Chris

Edit: Achso. Bei den Umgebungsvariablen würde ich es mit APPDATA versuchen. Allerdings würde dein Programm sofort Probleme bekommen, wenn ich aus Jux und Dollerei "set appdata bla" eingebe. Imho also nicht unbedingt empfehlenswert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:44 Uhr.
Seite 1 von 2  1 2      

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