Warum wird die INI nicht im richtigen Pfad angelegt?
In dem auch schreib und generelle Zugriffsrechte vorhanden sind?
Das ist sicherlich nicht Paramstr(0).
In diesem Fall sind auf Paramstr(0) anscheinend doch ausreichen Rechte vorhanden, denn:
Die Ini Datei liegt im selben Ordner wie die
dpr,
pas, ectra.
Der Fehler muss also woanders liegen. Vergiss erstmal das CSIDL_APPDATA und
UAC. Schau dir mal im Debugger an, was wo genau eingelesen wird.
Ist der Übergebene Dateiname bei erzeugeIni(IniName:string); und leseIni(IniName:string); identisch (Tipfehler?)
Wenn das Programm später mal unter C:\Programme... installiert werden soll, musst du natürlich unbedingt den Speicherort der Ini nach CSIDL_APPDATA legen.