Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Tutorials und Kurse (https://www.delphipraxis.net/36-tutorials-und-kurse/)
-   -   Neuer Artikel bei mir: %HOMEDIR% - das unbekannte Verzeichni (https://www.delphipraxis.net/53783-neuer-artikel-bei-mir-homedir-das-unbekannte-verzeichni.html)

xZise 1. Jan 2007 21:03

Re: Neuer Artikel bei mir: %HOMEDIR% - das unbekannte Verzei
 
Mal eine Frage zum Code:
Was ist folgendes Eintritt:
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   // Malloc = nil
  begin                  //
    Result := FolderPath; // Dann ist der Ordner ''?
    Exit;                // Bisschen ungünstig oder?
  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;
Oder passiert das dann, wenn der passende Ordner nicht existiert (z.B. Win95 oder so?)

Ehrlich gesagt sollte man folgendes machen:
  • "Benutzereinstellungen" im %AppData% Ordner
  • "Admineinstellungen" im %AppDir%
  • Funktion zum "Verfübarmachen" der Einstellungen (also, dass man sie sichern kann)

Generell halte ich es für sinnvoll, dass Programme, welche in einen "Admin"-Ordner gespeichert sind (z.B.: C:\Programme), dass die Daten in den Anwendungsdaten gespeichert werden sollen.

Und wegen den "Datenmüll": Ich weiß zwar nicht ob es schon Programme gibt, aber anscheinend sind diese nicht so gefragt (ich habe hier selber eins online gestellt, wills aber nicht nennen, damit niemand meint, ich mache überall Werbung, wo es nur geht :D). Oder das Programm gibt eine "Uninstall"-Routine mit.

Luckie 1. Jan 2007 21:11

Re: Neuer Artikel bei mir: %HOMEDIR% - das unbekannte Verzei
 
Du kannst ja prüfen, ob der Rückgbae String leer ist und wenn er das ist, kannst entsprechend reagieren.

Zitat:

Ehrlich gesagt sollte man folgendes machen:
  • "Benutzereinstellungen" im %AppData% Ordner
  • "Admineinstellungen" im %AppDir%
  • Funktion zum "Verfübarmachen" der Einstellungen (also, dass man sie sichern kann)

Das hat aber nichts direkt mit dem Thema zu tun.

Zitat:

Generell halte ich es für sinnvoll, dass Programme, welche in einen "Admin"-Ordner gespeichert sind (z.B.: C:\Programme), dass die Daten in den Anwendungsdaten gespeichert werden sollen.
Genau das sage ich ja auch in meinem Artikel.

Zitat:

Oder das Programm gibt eine "Uninstall"-Routine mit.
Das setze ich mal vorraus. Und wenn du dir meine Lukiedips anguckst, gibt es eine Schaltfläche, die vom Programm angelegten Dateien und den Ordner wieder zu löschen.

xZise 1. Jan 2007 21:24

Re: Neuer Artikel bei mir: %HOMEDIR% - das unbekannte Verzei
 
Zitat:

Zitat von Luckie
Zitat:

Oder das Programm gibt eine "Uninstall"-Routine mit.
Das setze ich mal vorraus. Und wenn du dir meine Lukiedips anguckst, gibt es eine Schaltfläche, die vom Programm angelegten Dateien und den Ordner wieder zu löschen.

[OT±Brauchte ich noch nicht[/OT]
Aber wenn man für den Benutzter nicht sichtbare Daten anlegt (Also für die 0815 PC-User), dann gehört es dazu.

Luckie 1. Jan 2007 21:28

Re: Neuer Artikel bei mir: %HOMEDIR% - das unbekannte Verzei
 
Reden wir jetzt über den Artikel oder über eine angeblich fehlende Uninstallroutine bei mienem LuckieDIPS?

xZise 1. Jan 2007 21:33

Re: Neuer Artikel bei mir: %HOMEDIR% - das unbekannte Verzei
 
Ich meine nur im "OT"-Teil dein DIPS, weil ich es nicht kenne, will ichs nicht bewerten.

Und ich wollte nicht sagen, dass du ein 0815-Programmierer wärst, weil das nicht stimmen würde.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:47 Uhr.
Seite 3 von 3     123   

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