Работа с правами доступа к файлу
..Program Files(x86)[имя программы]..
но тут появляется проблема, текстовые файлы наследуют свойство папки, то есть изменять их может только администратор. Следовательно у программы запущенной под пользователем возникает ошибка доступа к файлу.
Как это решить? (Вариант установить разрешение в ручную с помощью свойств файла не предлагать, не хочется напрягать пользователя лишним действием)
Пробовал программно устанавливать атрибут файла с помощью SetFileAttributes на faNormal, не помогает...
Пусть программа запускается от имени администратора (манифестом), или используй утилиту командной строки CACLS.
В Program Files стоит сохранять только read-only файлы. Если есть необходимость их изменять, то следует устанавливать такие файлы в %PROGRAMDATA%.