Запись в папку «Program Files» - очень плохая идея, вы должны предположить, что это место «только для чтения» после установки.
Сохранение пользовательских настроек в программных файлах вызывает проблемы, если более двух человек одновременно используют компьютер (например, службы терминалов), чьи настройки следует сохранить. Хотите ли вы, чтобы другие пользователи знали «ваши» настройки? Что произойдет, если ваша программа записывает настройки в файл как пользователь A, но пользователь B не может редактировать файл? Пользователь B может иметь доступ к каталогу, но не может читать / удалять файл настроек, поскольку он принадлежит пользователю A.
Устаревшие программы win9x часто пишут в папку программных файлов, Windows Vista на самом деле делает некоторые хитрые хитрости, чтобы эти программы работали. Когда ваша программа пишет файл, vista фактически помещает его в другое место, доступное только этому пользователю. То же самое делается для записи реестра в HKLM (или так я обнаружил после нескольких часов отладки ...), и Server 2008 делает то же самое.
Если вам необходимо сохранить пользовательские настройки, лучшим вариантом будет сохранение настроек в папке Application Data (переменная среды% APPDATA%)
Если настройки распространяются на всю систему, то администратор должен установить их после установки или при первом запуске, и они не могут быть перезаписаны ограниченными пользователями.
Итак, чтобы ответить на ваш вопрос - ДА, есть способ сделать то, что вы спросили. Но это плохая идея, она небезопасна и, вероятно, вызовет проблемы в долгосрочной перспективе.