System configuration dll как добавить
Я обнаружил, что
работает, но этот код помечен Microsoft как устаревший.
Я прочитал, что я должен использовать:
Кто-нибудь знает, как лучше всего это сделать?
21 ответ
Вам нужно добавить ссылку в System.Configuration в папке ссылок вашего проекта .
Вам определенно следует использовать ConfigurationManager поверх устаревшего ConfigurationSettings
Для примера App.config, как показано ниже:
Вы прочитали вышеуказанные настройки приложения, используя код, показанный ниже:
Вам также может понадобиться добавить ссылку на System.Configuration в вашем проекте, если ее еще нет. Затем вы можете получить доступ к значениям следующим образом:
Надеюсь, это поможет!
Обновление для платформы 4.5 и 4.6; следующее больше не будет работать:
Теперь перейдите к классу Setting через Свойства:
См. Управление настройками приложения для получения дополнительной информации.
Я использую это, и это хорошо работает для меня
Вы должны добавить в проект ссылку на сборку System.Configuration.
Чтение из конфигурации:
Вам нужно будет добавить ссылку на Config
- Откройте "Свойства" в своем проекте
- Перейдите на вкладку "Настройки"
- Добавьте "Имя" и "Значение"
Получить значение, используя следующий код:
строковое значение = Properties.Settings.Default.keyname;
Сохранить в конфигурации:
Возможно, вы добавляете файл App.config в DLL. App.Config работает только для исполняемых проектов, поскольку все библиотеки DLL принимают конфигурацию из файла конфигурации для исполняемого файла.
Допустим, у вас есть два проекта в вашем решении:
Ваша проблема может быть связана с тем, что вы добавляете app.config в SomeDLL, а не SomeExe. SomeDll может читать конфигурацию из проекта SomeExe.
В web.config должна быть следующая структура:
У меня была такая же проблема, просто прочитайте их так:
web.config используется с веб-приложениями. web.config по умолчанию имеет несколько конфигураций, необходимых для веб-приложения. У вас может быть web.config для каждой папки в вашем веб-приложении.
Вы можете использовать один и тот же метод для вызова значений app settings из обоих файлов конфигурации:
Я настоятельно рекомендую вам создать Wrapper для этого вызова. Что-то вроде ConfigurationReaderService и использование внедрения зависимостей для получения этого класса. Таким образом, вы сможете изолировать эти файлы конфигурации для целей тестирования.
Поэтому используйте предложенное ConfigurationManager.AppSettings["something"]; и верните это значение. С помощью этого метода вы можете создать какой-то возврат по умолчанию, если в файле .config нет ключа.
Кроме того, вы можете использовать formo :
Как я нашел лучший подход для систематического доступа к переменным настроек приложения, создав класс-оболочку для System.Configuration, как показано ниже
Теперь мы можем получить доступ к необходимым переменным настроек по жестко закодированным именам, используя другой класс, как показано ниже
Для полноты картины есть еще один вариант, доступный только для веб-проектов:
Преимущество этого заключается в том, что он не требует добавления дополнительной ссылки, поэтому может быть предпочтительным для некоторых людей.
Я пытаюсь добавить файл app.config в свою DLL, но все попытки потерпели неудачу.
Согласно MusicGenesis в разделе Ввод информации о конфигурации в DLL, это не должно быть проблемой. Поэтому, очевидно, я делаю что-то неправильно.
Следующий код должен вернуть мой ConnectionString из моей DLL:
Однако, когда я копирую файл app.config в консольное приложение, он отлично работает.
В то время как редко приходится отслеживать настройки отдельно для разных копий приложения в рамках одного профиля пользователя, очень маловероятно, что вы хотите, чтобы все разные способы использования DLL для совместного использования с друг друга. По этой причине, когда вы извлекаете объект "Конфигурация" с использованием "нормального" метода, возвращаемый объект привязывается к конфигурации домена приложения, в котором вы выполняете, а не к конкретной сборке.
Домен приложения привязан к корневой сборке, которая загружает сборку, в которой находится ваш код. В большинстве случаев это будет сборка вашего основного .EXE, загружаемого в .DLL. В приложении можно развернуть другие домены приложений, но вы должны явно предоставить информацию о том, что такое корневая сборка этого домена приложения.
По статистике, вы, вероятно, используете эту библиотеку в домашней обстановке, и маловероятно, что у вас будет несколько приложений, использующих ее в рамках любой машины/пользователя. Но, если нет, есть что-то, о чем вы должны помнить. Если вы используете один глобальный файл конфигурации для своей DLL, независимо от приложения, которое ссылается на него, вам нужно беспокоиться о конфликтах доступа. Если одновременно запускаются два приложения, ссылающиеся на вашу библиотеку, каждый из которых имеет свой собственный объект Configuration , то при сохранении изменений он будет вызывать исключение в следующий раз при попытке получить или сохранить данные в другом приложении.
Самый безопасный и простой способ обойти это - потребовать, чтобы сборка, которая загружает вашу DLL, также предоставляет некоторую информацию о себе или обнаруживает ее, исследуя домен приложения реферирующей сборки. Используйте это, чтобы создать некоторую структуру папок для хранения отдельных пользовательских конфигурационных файлов для каждого приложения, ссылающегося на вашу DLL.
В этой статье вводится, как хранить настраиваемые сведения из файла конфигурации, которые можно получить позже во время запуска его связанным приложением. Это полезно, когда необходимо определить данные, связанные с приложением.
Требования
В следующем списке описаны необходимое оборудование и программное обеспечение:
В этой статье предполагается, что вы знакомы со следующими разделами:
Создание приложения консоли, которое читает файл конфигурации
В файле конфигурации, связанном с приложением, можно хранить параметры приложений. Файлы конфигурации сохраняются в формате XML.
Чтобы создать консольное приложение, которое читает содержимое связанного файла конфигурации во время запуска, выполните следующие действия:
В меню File указать на New, а затем выбрать Project.
Убедитесь, что отображается окно Обозреватель решений. Если его не видно, нажмите клавишу CTRL+ALT+L.
В Обозревателе решений щелкните правой кнопкой мыши имя проекта, выберите Добавить, а затем выберите Новый элемент.
В списке Добавление новых элементов выберите XML-файл.
В текстовом окне Имя введитеApp.config, а затем выберите Добавить.
Вы можете использовать файл конфигурации приложений для сбора настраиваемой настройки приложения, которые вы сохраняете в формате ключ/значение. Элементы можно <add> включить в раздел <appSettings> связанного файла конфигурации. Каждая пара ключей и значений имеет один <add> элемент. Элемент <add> имеет следующий формат:
Добавьте раздел <appSettings> с элементами в файл <add> конфигурации между тегами <configuration> и </configuration> тегами.
Например, в следующем файле конфигурации содержится раздел, который указывает <appSettings> три пары ключей и значений:
В Обозревателе решений дважды щелкните Program.cs, чтобы отобразить окно кода. Добавьте следующие утверждения в модуль кода.
Эти утверждения должны отображаться перед любыми другими утверждениями в файле.
Добавьте ссылку на System.Configuration.dll, следуя следующим шагам:
Чтобы удерживать значение из ключа файла конфигурации в разделе файл конфигурации, заявите строковую переменную в разделе <appSettings> Main следующим образом:
Чтобы получить значение для указанного ключа из раздела файла конфигурации, используйте метод <appSettings> Get свойства AppSettings ConfigurationManager класса. Класс ConfigurationManager находится в пространстве System.Configuration имен. Когда метод получает параметр ввода строки, содержащий ключ, приложение получает значение, AppSettings.Get связанное с ключом.
Следующий код извлекает значение Key0 атрибута из связанного файла конфигурации. Затем код помещает это значение в sAttr переменную строки. Если ключа для этого значения не существует, в них ничего не sAttr хранится.
Чтобы отобразить значение, которое приложение извлекает в окне Консоли, используйте Console.WriteLine следующим образом:
Для получения всех пар ключей и значений в разделе можно использовать одну ссылку AppSettings на <appSettings> свойство. При использовании свойства приложение возвращает все связанные пары AppSettings ключей и значений. Эти пары хранятся в NameValueCollection типе. Содержит NameValueCollection записи ключа и значения для каждого ключа, который извлекает приложение. Класс NameValueCollection находится в пространстве System.Collections.Specialized имен.
Свойство AllKeys NameValueCollection ссылок строковый массив, который имеет запись для каждого ключа, который приложение извлекает. Используйте конструкцию foreach для итерации через массив, чтобы получить доступ к каждому AllKeys ключу, который извлекает приложение. Каждая запись ключа AllKeys — это тип данных строки.
Внутри foreach конструкции используйте для отображения ключа и Console.WriteLine связанного с ним значения в окне Консоли. Текущий ключ, в который находится процессы s приложения. Используйте его в качестве индекса для sAllNameValueCollection получения связанного значения.
Полное перечисление кода
Полный список файлов конфигурации (ConConfig.exe.config)
Убедитесь, что он работает
Устранение неполадок
Файл конфигурации сохранен в формате XML. Убедитесь, что вы следуете всем правилам синтаксиса XML. Помните, что XML является чувствительным к делу. Если XML не сформирован, или если элемент опечатка, вы получите System.Configuration.Configuration исключение.
Файл конфигурации должен быть сохранен в той же папке, что и связанное с ним приложение.
Для имени файла конфигурации необходимо использовать следующий синтаксис:
<ApplicationName>.<ApplicationType>.config
Где <ApplicationName> имя приложения. <ApplicationType> это тип приложения, например .exe . И .config это необходимый суффикс.
Пользователи часто недоумевают, потому что программы, которые только недавно работали, не запускаются. Например, были запущены Photoshop и Skype, но теперь появляется ошибка "Программа не запускается, потому что system.configuration.dll отсутствует на вашем компьютере.
Что мне делать? Как мне ее вернуть? Как и где скачать system.configuration.dll и куда ее положить? Ответы на все ваши вопросы здесь!
Что такое system.configuration.dll?
"System.configuration.dll пропущена" - это достаточно стандартная ошибка на Windows PC. Чаще всего проблема заключается в установке обновления Windows и неудачной установке некоторой программы.:
A .dll файл (Dynamic Link Library) функционирует, когда конкретной программе нужен этот .dll файл. Если он поврежден/пропущен, пользователи видят, например, ошибку system.configuration.dll, которая приводит к аварийному завершению работы. Стоит добавить, что system.configuration.dll - это файл, используемый в дистрибутиве Visual C++ Redistributable для Visual Studio 2015.:
При появлении уведомления о пропущенном файле пользователи начинают поиск загрузки system.configuration.dll. Лучше делать это в проверенном месте, например на сайте DLL Kit, где нет ни угроз, ни вирусов.:
Самые распространенные ошибки с system.configuration.dll файлом на Windows
- :Файл Dll удален/поврежден. Основная причина - удален или поврежден важный для приложения .dll файл. Вам необходимо восстановить файл или скачать его еще раз.
- Ошибка в облаке Adobe. Проблема вызвана поломкой Visual C ++.
- Файлы Visual Studio 2015 повреждены/пропущены. Файл .dll отсутствует на компьютере или поврежден приложением/системой/вирусом.
- Система ПК заражена вирусами. Вредоносные программы и вирусы всегда повреждают файл system.configuration.dll.
- В нем повреждены системные файлы. Ошибки и повреждения возникают после некорректной перезагрузки Windows и работы с зараженными программами и приложениями.
Другие распространенные System.configuration.dll ошибки включают:
- “System.configuration.dll пропущена“
- “System.configuration.dll ошибка загрузки“
- “System.configuration.dll крах“
- “System.configuration.dll не найдена“
- “System.configuration.dll не удалось обнаружить“
- “System.configuration.dll Нарушение Доступа“
- “Точка входа в процедуру System.configuration.dll error“
- “Не получается найти System.configuration.dll“
- “Не могу зарегистрировать System.configuration.dll“
метод 1: Загрузить system.configuration.dll автоматически
Не знаете, какая версия system.configuration.dll вам нужна? Не волнуйтесь; используйте автоматический метод для решения проблемы или просто прочитайте статью ниже.
Для этого метода скачайте system.configuration.dll по нашей ссылке и используйте командную строку, чтобы зарегистрировать отсутствующую system.configuration.dll:
- Одновременно нажмите клавиши Windows и R на клавиатуре - появится окно Run - введите cmd - нажмите Ctrl+Shift+Enter - перед вами появится командная строка с правами администратора.
- Когда появится запрос, необходимо разрешить командной строке вносить изменения, поэтому нажмите Yes.
- Теперь удалите файл реестра (введите или скопируйте команду regsvr32 /u system.configuration.dll, а затем нажмите Enter).
- Теперь зарегистрируйте файл: введите команду regsvr32 system.configuration.dll и нажмите Enter.
- Закрыть командную строку и запустить приложение.
SYSTEM.CONFIGURATION.DLL ВЕРСИИ
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 |
---|---|---|---|
4.7.3056.0 32bit | U.S. English | 0.4 MB | MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 |
---|---|---|---|
4.6.57.0 32bit | 0.13 MB | MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 |
---|---|---|---|
4.0.30319.1 32bit | U.S. English | 0.39 MB | MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 |
---|---|---|---|
2.0.50727.5420 32bit | U.S. English | 0.41 MB | MD5 SHA1 |
Какая версия system.configuration.dll правильная?
Посмотрите на описания в таблице, где можно выбрать нужный файл. Существуют версии для 64-битной или 32-битной Windows и используемые в них языки. Выберите те dll-файлы, язык которых идентичен языку самой программы. Загрузите последние версии dll-файлов для своей программы.
Where should you place system.configuration.dll?
Ошибка "system.configuration.dll пропущена" будет исправлена, если переместить файл в папку установки приложения или игры. Также можно переместить system.configuration.dll в системный каталог Windows.
Если этот метод не помогает, используйте следующий.
метод 3: Переустановить Visual C++ Redistributable for Visual Studio 2015
Мы рекомендуем переустановить переустановку дистрибутива Visual C++ для Visual Studio 2015. Пожалуйста, придерживайтесь рекомендаций Microsoft по правильной установке отсутствующих файлов.
Рекомендуется скачать программу с официального сайта Microsoft:
- Вам необходимо скачать Microsoft Visual C++ Redistributable с официального сайта Microsoft.
- Выберите файл для вашей версии Windows: vc_redist.x64.exe для 64-битной версии или vc_redist.x86.exe для 32-битной операционной системы. Установите флажок рядом с файлом и нажмите кнопку Next.
- Открыть файл - прочитать условия лицензирования программного обеспечения Майкрософт - согласиться - выбрать пункт Установить.
Если этот метод не помогает, используйте следующий.
Список некоторых исполняемых файлов библиотеки Visual C++
- mfc140u.dll
- mfcm140.dll
- mfcm140u.dll
- mfc140chs.dll
- mfc140cht.dll
- ucrtbase.dll
- vcruntime140.dll
- msvcp140.dll
- concrt140.dll
- vccorlib140.dll
- vcamp140.dll
Вот некоторые решения по исправлению ошибки "system.configuration.dll is Missing". Пожалуйста, прочитайте все инструкции и следуйте им, чтобы успешно добавить конкретную версию файла .dll в Windows для восстановления system.configuration.dll проблемы.
метод 4: Запустить SFC сканирование (System File Checker)
Проверка системных файлов (SFC scan) - инструмент, доступный в Windows. Устройство считается самым быстрым способом автоматического исправления поврежденных системных файлов. Для запуска необходимо запустить его:
Если этот метод не помогает, используйте следующий.
метод 5: Обновить Windows до последней версии
Даже простое обновление Windows может помочь решить эту проблему. Обновляя операционную систему до последней версии, все ошибки system.configuration.dll могут исчезнуть:
- Открыть настройки из меню Пуск или с помощью комбинации клавиш Windows+I.
- Перейти к обновлению и безопасности.
- В закладке Windows Update нажмите Check for updates.
- Новое обновление найдено - Установить сейчас.
Если этот метод не помогает, используйте следующий.
метод 6: Переустановить нужное приложение
Когда ни один из методов не может помочь, окончательным решением может быть переустановка приложения после его полной деинсталляции:
Общие режимы профиля:
<configuration>
<configSections> // Область объявления раздела конфигурации, включая раздел конфигурации и объявление пространства имен
<section> // Оператор раздела конфигурации
<sectionGroup> // Определение группы раздела конфигурации
<section> Оператор раздела конфигурации в группе раздела конфигурации
<appSettings> // Предварительно определенный раздел конфигурации
<Пользовательский элемент для раздела конфигурации> // Область настройки раздела конфигурации
Ниже приведен пример наиболее распространенного файла конфигурации приложения, содержащего только раздел appSettings:
В предопределенном разделе appSettings (обратите внимание на случай) есть много элементов, все имена которых - «добавить», а два атрибута - «ключ» и «значение».
Примечание. Теперь в Net FrameWork 2.0 четко указано, что этот атрибут ConfigurationSettings устарел, и его рекомендуется изменить на ConfigurationManager или WebConfigurationManager.
После добавления ссылки вы можете использовать ConfigurationManager.AppSettings ["Key"] для чтения соответствующего значения.
Однако свойство ConfigurationManager.AppSettings доступно только для чтения и не поддерживает изменение значений свойств. Это связано с тем, что Microsoft не рекомендует динамически записывать файл app.config, но рекомендует после ручной настройки только статический доступ во время работы программы.
Если вам действительно нужно внести изменения в программу, то есть написать App.Config, продолжайте читать.
Во-вторых, операции чтения и записи раздела конфигурации appSettings.
Метод чтения раздела appSettings файла App.config относительно прост. Доступ к нему можно получить с помощью вышеупомянутого метода System.Configuration.ConfigurationManager.AppSettings ["Key"], но, как упоминалось ранее, этот метод не обеспечивает запись.
Если вы хотите написать файл конфигурации, вы можете использовать объект ConfigurationManager для выполнения операции открытия файла конфигурации, будет возвращен объект конфигурации, и операция может быть выполнена с использованием этого объекта (добавление, удаление, изменение и проверка все возможно).
Код реализации приведен ниже (добавьте ссылку на использование пространства имен System.Configuration)
1. Доступ к элементу <add> на основе несуществующего значения Key или даже использование метода remove () для удаления несуществующего элемента не вызовет исключения, первый вернет null.
2. Добавление существующего элемента <add> не вызовет исключения, но объединит существующее значение и новое значение, разделенные знаком «,», например: «olldvalue, newvalue».
3. После компиляции проекта под файлом bin \ Debuge в рабочем каталоге появятся два файла конфигурации, один с именем «ProjectName.exe.config», а другой с именем «ProjectName.vshost.exe.config». Первый файл - это файл конфигурации, фактически используемый проектом, и все изменения, внесенные во время работы программы, будут сохранены здесь; второй файл на самом деле является файлом синхронизации «App.config» в исходном коде, то есть не изменится.
4. Обратите особое внимание на регистр (файлы XML чувствительны к регистру), например, в разделе конфигурации appSettings.
Читайте также: