Подтвердить что ты не робот

Как мне настроить параметры области приложения только для чтения?

Какая польза от них, если они не могут быть изменены со своих значений по умолчанию? Риторический вопрос.

Во-первых, что лучший способ обойти систему настроек и напрямую записать в файл настроек области приложения (проблемы безопасности в следующем абзаце)? XmlReader/XmlWriter?

IIRC, если приложение пытается записать в папку Program Files, Windows Vista и 7 делают некоторые магии, чтобы предотвратить это. Я предполагаю, что мне нужно вызвать UAC для подъема, и я должен поместить этот яркий значок экрана в окно "Параметры окна OK" и так далее. Ссылка на быстрое руководство пользователя?

В качестве альтернативы вы можете сказать мне, что то, что я пытаюсь сделать, глупо, и я должен сохранить мои измененные параметры области приложения где-то еще.

4b9b3361

Ответ 1

Если вы измените их на "пользовательские" параметры, их можно изменить в коде, а при вызове Save() они будут сохранены в файле user.config в папке локальных настроек текущих пользователей.

Очевидно, это означает, что они могут быть разными для каждого пользователя. Как правило, глобальные параметры приложения, которые одинаковы для каждого пользователя, не изменяются в коде, потому что изменение, которое делает один пользователь, будет влиять на всех остальных (следовательно, настройки приложения доступны только для чтения).

Если вы не хотите, чтобы они были областями пользователя, посмотрите класс ConfigurationManager. Это позволит вам вручную читать и записывать файлы .config. Помните, что папка c:\program files\protected и обычные пользователи не имеют к ней доступа (это приведет к появлению UAC-запросов или сбоев в Vista/Win7). Внимательно изучите, как вы справитесь с этим, и помните, что любое изменение app.config повлияет на всех пользователей.

В окнах нет места, где у всех пользователей будет доступ к записи.

Ответ 2

Посмотрите здесь: Лучшая практика сохранения настроек приложения в приложении Windows Forms

Класс ApplicationSettings не поддержка сохранения настроек Файл app.config. Это очень дизайн, приложения, которые работают с (думаю, Vista UAC) не имеют права на запись в папке установки программы.

Вы можете сражаться с системой с помощью Класс ConfigurationManager. Но тривиальное обходное решение - войти в Настройщик и изменение настройка области для пользователя. Если это вызывает трудности (скажем, настройка относящихся к каждому пользователю), вы должны добавьте функцию "Параметры" в отдельную программы, чтобы вы могли запросить привилегия возмещение просьба. Или отказаться от используя настройку.