Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   GetSpecialFolder in der IDE beim debuggen "leer" (https://www.delphipraxis.net/199395-getspecialfolder-der-ide-beim-debuggen-leer.html)

EWeiss 20. Jan 2019 11:05


GetSpecialFolder in der IDE beim debuggen "leer"
 
Wieder ein seltsames verhalten unter Win10.

Delphi-Quellcode:
{$REGION 'Function GetSpecialFolder'}
function GetSpecialFolder(aFolder: Integer): String;
var
  pIdL: PItemIDList;
  Path: array [0..Max_Path] of Char;
  Allocator: IMalloc;
begin
  // ItemIdList für den Ordner holen
  SHGetSpecialFolderLocation(0, aFolder, pIdL);
  // ItemIdList in String umwandeln lassen
  SHGetPathFromIDList(pIDL, Path);
  // Speicher wieder freigeben
  if Succeeded(SHGetMalloc (Allocator)) then
    Allocator.Free(pIdL);
  Result := Path;
end;
{$ENDREGION}
Delphi-Quellcode:
{$REGION 'Procedure InitPath'}
procedure InitPath;
begin
  UserAppDataDir := GetSpecialFolder(CSIDL_APPDATA);
  if FileExists(UserAppDataDir +  '\BrewIdeas\ProgCommand\ProgBar' + '\ProgBar.ini') then
    ProgBarIni := TIniFile.Create(UserAppDataDir + '\BrewIdeas\ProgCommand\Progbar' + '\ProgBar.ini')
  else
  ProgBarIni := TIniFile.Create(UserAppDataDir + '\BrewIdeas\ProgCommand\ProgBar' + '\ProgBar.ini');

end;
{$ENDREGION}
Wenn ich die Anwendung debugge ist der Path immer leer
Starte ich die Anwendung normal wird die INI Datei aber im richtigen Pfad gefunden.

gruss

EWeiss 20. Jan 2019 11:43

AW: GetSpecialFolder in der IDE beim debuggen "leer"
 
Habe es selbst herausgefunden..
Hier die Infos.

Wenn beim Debuggen im Environment Block "User Overrides" Daten enthalten sind dann geht der Path ins leere.
Ist das Feld jedoch leer gibt mir Path den korrekten Pfad zurück.
Verstehe wer will.

Ich finde immer mehr Ungereimtheiten in Verbindung mit Win10 hatte ich alle vorher nicht.
Leider ist das die Gegenwart\Zukunft.

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:08 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