Доступ к файлу настроек / настроек на сервере - PullRequest
1 голос
/ 29 января 2010

Мое приложение исторически использовало INI-файл на том же файловом сервере, поскольку данные, которые оно использует, расположены для хранения настроек каждого пользователя, поэтому они перемещаются, если пользователь входит в систему с нескольких компьютеров. Для этого у нас был файл, который выглядел так:

[domain\username1]
value1=foo
value2=bar

[domain\username2]
value1=foo
value2=baz

В этом выпуске мы пытаемся отойти от использования ini-файлов из-за ограничений в функциях чтения / записи ini для win32 без необходимости написания собственного анализатора ini-файлов.

Я посмотрел на app.config и файлы пользовательских настроек, но ни один из них не подходит. Первый должен находиться в той же папке, что и исполняемый файл, а второй не предоставляет никаких средств для создания новых значений во время выполнения.

Есть ли какая-то встроенная опция, которую мне не хватает, или мой лучший способ написать собственный класс предпочтений и использовать XML-сериализацию фреймворка для его записи?

Ответы [ 2 ]

1 голос
/ 29 января 2010

Я обнаружил, что самый быстрый способ здесь - просто создать файл XML, который делает то, что вы хотите, а затем использовать XSD.exe для создания класса и сериализации данных. Это быстро и несколько строк кода и работает довольно хорошо.

0 голосов
/ 29 января 2010

Не проверяли или не слышали о nini , который является сторонним обработчиком ini. Я нашел его довольно простым в использовании и простым для чтения / записи в INI-файл.

Для вашей выгоды это будет означать очень небольшие изменения и более прост в использовании.

Преобразование из ini в другой формат должно быть взвешено, как, например, влияние кода, простота программирования (если не считать аккуратности, изменение кода для использования xml может быть легким, но оно ограничивает то, что вы не можете писать в него). Какая польза от извлечения INI-кодов и замены их на XML - это вопрос, который вы должны решить?

Вполне может произойти стук в эффект, такой как необходимость изменить его и адаптировать код ... но ... в течение видимого времени, конечно, ini немного устарел и стар, но он все еще в использование, я не могу видеть, чтобы Microsoft отбрасывала поддержку API ini, поскольку она очень жива и используется за кулисами для установки драйверов ... подумайте о файлах inf, используемых, чтобы указать, куда идут драйверы и как они установлены ... здесь, чтобы остаться, поскольку производители драйверов приняли это и является де-факто стандартным способом распределения драйверов ...

Надеюсь, это поможет, С наилучшими пожеланиями, Том.

...