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