Я использую inno setup, чтобы сделать установочный пакет для моего приложения, а мое приложение написано С# +.Net 2.0 + VSTS 2008. Inno setup = > http://www.jrsoftware.org/isinfo.php, и я устанавливаю свое приложение в папку Program Files/Foo (Foo - это мое имя приложения). Мое приложение предназначено для Windows Vista.
Я обнаружил, что моя программа не может записать в папку Program Files/Foo. И мне нужно разрешение на запись в эту папку, чтобы сохранить некоторые файлы конфигурации. Странная вещь, которую я замечаю, это папка Program Files/Foo, которая помечается как readonly, и я проверил все папки в разделе Program Files, отмеченные только как чтение, например Office.
Мои вопросы:
- Почему все папки отмечены как прочитанные только в Program Files? Это означает, что мы не должны писать в отдельные папки приложений в Program Files? Если нет, то где мы должны записывать информацию на диск, такую как последняя выбранная пользователем информация о конфигурации отдельного приложения?
- Если бы мы могли писать в отдельные папки приложений в Program Files, то каково это решение? Я не хочу, чтобы мое приложение запускало как администратор, чтобы решить эту проблему, и если есть решение для записи в эту папку, я хочу, если возможно, получить минимальное разрешение.