Zitat von AHT;685288Nein, hilft leider doch nicht. Das Problem liegt bei Zugriffsrechten des Ordner C:\Program files\. Benutzer haben hier standardmäßig keinen Vollzugriff, nur Administratoren. Wird dein Programm also ohne Adminrechte gestartet, darf es in den Ordner C:\Program files\ gar nicht schreiben und auch keine Dateien dort erstellen. Versucht es das trotzdem, wird auf den virtuellen Ordner umgeleitet, den Andreas hier genannt hat. Startest du das Programm mittels asInvoker Manifest aus C:\Program files\ bzw. C:\Programme\, dürfte es beim Erstellen der Dateien abstürzen (ungetestet).
Es hilft dann, wenn man seine Daten da ablegt wo es erlaubt ist, das ist der Ordner AppData (Anwendungsdaten). Der wird folgendermassen ermittelt und benutzt.
$H Windows.ph
'Ordner für MeinProgramm ermitteln
Var DataPath$ = Space$(~MAX_PATH)
External("shell32.dll","SHGetSpecialFolderPathA",0,Addr(DataPath$),$001a,0)
DataPath$ = Trim$(DataPath$)+"\\MeinProgramm\\"
'sicherstellen das es den Ordner gibt
External("Dbghelp.dll","MakeSureDirectoryPathExists",Addr(DataPath$))
Print DataPath$
waitinput
Alles anzeigen
Ist der Ordner angelegt, dann können hier die Daten für Dein Programm abgelegt und ausgelesen werden.