Top-office11.ru

IT и мир ПК
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Узнаем как DLL зарегистрировать в Windows любой версии: несколько основных способов

Узнаем как DLL зарегистрировать в Windows любой версии: несколько основных способов

Иногда бывает так, что некоторые программы в Windows-средах при старте исполняемого файла приложения не запускаются, а система выдает сообщение о том, что такой динамический компонент (библиотека) формата DLL отсутствует или не зарегистрирован. Далее рассмотрим вопрос того, как DLL зарегистрировать в системе несколькими способами, но только при условии, что такой действительно имеется в наличии. Также будет обращено внимание пользователя на некоторые возможные ошибки, которые могут появиться при выполнении действий любым из способов.

Регистрация компоненты comcntr.dll (для COM соединения с базой 1С)

Если фоновый процесс COM-соединения завершается с ошибкой:

<Обработка.ОбменДаннымиXML.МодульОбъекта(15947)>: Ошибка при вызове конструктора (COMОбъект): -2147221005(0x800401F3): Invalid class string

Нужно зарегистрировать библиотеку ComConnector comcntr.dll из каталога программы.

. Перед этим нужно отключить службу агента сервера 1С:Предприятия и все программы, использующие эту DLL .

В 32-битной версии сервера проблема решилась бы командой: regsvr32 «C:\Program Files (x86)\1cv8\8.3.5.1119\bin\comcntr.dll»

но в 64-битной версии команда будет примерно такой * : C:\Windows\SysWOW64\regsvr32 «C:\Program Files (x86)\1cv8\8.3.5.1119\bin\comcntr.dll»

При удачном выполнении Вы увидите:

Если команда регистрации не помогла, то нужно предварительно удалить регистрацию библиотеки comcntr.dll, запустив ту же команду вызова regsvr32 с ключом /u

Если и это не помогло, попробуйте переустановить платформу 1С в режиме Исправить и отметьте COM соединение

Распечатать

Похожие FAQ

Еще в этой же категории

Ключевые слова и Изображения

Слова упорядочены по частоте использования в тексте

Изображения

Регистрация компоненты comcntr.dll (для COM соединения с базой 1С)Регистрация компоненты comcntr.dll (для COM соединения с базой 1С)

83.COMConnector класс не зарегистрирован

Случается, что при попытке подключения к информационной базе через com-соединение возникает ошибка при вызове конструктора (COMОбъект): «Класс не зарегистрирован» или «Недопустимая строка с указанием класса».

Первым делом необходимо зарегистрировать DLL в системе

Regsvr32 «C:\Program Files\1cv8\8.3.7.1776\bin\comcntr.dll»

В случае, если не помогает — создаём коннектор руками:

•Заходим в Панель управления — Администрирование — Службы компонентов.

•Переходим к ветке Компьютеры — Мой компьютер — Приложения COM+.

•В контекстном меню выбираем Создать — Приложение. Откроется Мастер установки приложений COM+.

•Выбираем «Создать новое приложение».

•Вводим имя «V83COMConnector». Устанавливаем переключатель «Серверное приложение». Нажимаем «Далее».

•На следующем шаге устанавливаем «Текущий пользователь». Нажимаем «Далее».

•В появившейся ветке V83COMConnector переходим к подветке Компоненты.

•В контекстном меню выбираем Создать — Компонент. Откроется Мастер установки компонентов COM+.

•Выбираем «Установка новых компонентов».

•Выбираем файл <каталог 1С>\bin\comcntr.dll.

•Нажимаем «Далее» — «Готово».

•Переходим к ветке V83COMConnector.

•В контекстном меню выбираем «Свойства». В открывшемся окне переходим на вкладку «Безопасность».

•Снимаем галку «Принудительная проверка доступа для приложений». Ставим галку «Применить политику программных ограничений». Устанавливаем Уровень ограничений — «Неограниченный».

Класс V83.COMConnector зарегистрирован и может использоваться для подключения к информационным базам.

Бывало так, что вместо Текущий пользователь нужно прописать USR1CV8

[ Главная | FAQ: Все | 7.х | 8.х | 8.2 УП | 8.3 | Видео | Files | Forum | Freelance | Поиск | Реклама на HelpF.pro | Обратная связь ]
HelpF.pro [old Help1C.com] 2009-2020 Все материалы, размещенные на сайте, добавлены посетителями сайта или взяты из свободных источников. Подробнее.
Google+FacebookВКонтактеYouTubeInstagramTwitter @Help1CRSS

Варианты решения проблемы

Имеется несколько методов, позволяющих устранить данную проблему. Рассмотрим каждый из них подробнее.

Способ 1: OCX/DLL Manager

OCX/DLL Manager – это маленькая программа которая может помочь зарегистрировать библиотеку или файл OCX.

Загрузить программу OCX/DLL Manager

Для этого вам нужно будет:

  1. Нажать на пункт меню «Register OCX/DLL».
  2. Выбрать тип файла, который будете регистрировать.
  3. При помощи кнопки «Browse» указать местоположение DLL.
  4. Нажать на кнопку «Register» и программа сама зарегистрирует файл.

Программа OCX DLL Manager

OCX/DLL Manager также умеет отменять регистрацию библиотеки, для этого понадобится выбрать в меню пункт «Unregister OCX/DLL» и в последствии проделать все те же операции, как и в первом случае. Функция отмены может вам понадобиться для сравнения результатов при активированном файле и при отключенном, а также в процессе удаления некоторых компьютерных вирусов.

В процессе регистрации, система может выдать вам ошибку, говорящую о том, что требуются права администратора. В таком случае, нужно запустить программу нажав на неё правой кнопкой мыши, и выбрать «Запуск от имени администратора».

Читать еще:  Web Of Trust (WOT) для Firefox

Запуск программы от имени администратора OCX DLL Manager

Способ 2: Меню «Выполнить»

Можно зарегистрировать DLL, используя команду «Выполнить» в стартовом меню операционной системы Windows. Для этого нужно будет произвести следующие действия:

    Нажать клавиатурную комбинацию «Windows + R» или выбрать пункт «Выполнить» из меню «Пуск».

Открываем меню Выполнить

где dllname — это имя вашего файла.

Регистрируем DLL библиотеку через меню Выполнить

Этот пример подойдёт вам в том случае, если операционная система установлена на диск С. Если она находится в другом месте, то нужно будет поменять букву диска или воспользоваться командой:

Команда для регистрации dll которая сама находит папку где у вас установлена ОС

В таком варианте программа сама находит папку где у вас установлена ОС и запускает регистрацию указанного DLL файла.

В случае с 64-разрядной системой у вас будет две программы regsvr32 — одна находится в папке:

и вторая по пути:

Это разные файлы, которые используются раздельно для соответствующих ситуаций. Если у вас 64-битная ОС, а файл DLL 32-битный, тогда сам файл библиотеки должен быть помещен в папку:

и команда будет выглядеть уже так:

Команда для регистрации dll в 64-битной системе

Способ 3: Командная строка

Регистрация файла через командную строку не сильно отличается от второго варианта:

  1. Выберите команду «Выполнить» в меню «Пуск».
  2. Впишите в открывшемся поле для ввода cmd.
  3. Нажмите «Enter».

Перед вами появится окно, в котором нужно будет вводить те же команды, что и во втором варианте.

Регистрируем DLL библиотеку через командную строку

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

Меню вставки в командной строке Windows

Способ 4: Открыть с помощью

  1. Откройте меню файла, который будете регистрировать, нажав по нему правой кнопкой мыши.
  2. Выберите «Открыть с помощью» в появившемся меню.

Регистрируем DLL библиотеку через меню Открыть с помощью

или в случае, если вы работаете в 64-битной системе, а файл DLL 32-разрядный:

Возможные ошибки

«Файл не совместим с установленной версией Windows» — это означает, что вы, скорее всего, пытаетесь зарегистрировать 64-разрядную DLL в 32-битной системе или наоборот. Воспользуйтесь соответствующей командой, описанной во втором способе.

«Точка входа не найдена» — не все библиотеки DLL можно зарегистрировать, некоторые из них просто не поддерживают команду DllRegisterServer. Также, возникновение ошибки может быть вызвано тем, что файл уже зарегистрирован системой. Существуют сайты, распространяющие файлы, которые в реальности не являются библиотеками. В таком случае, естественно, зарегистрировать ничего не выйдет.

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

Мы рады, что смогли помочь Вам в решении проблемы.

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

Блог о модемах, роутерах и gpon ont терминалах.

Одним из важнейших элементов Windows 10 являются файлы динамических библиотек с расширением DLL (Dynamic Link Library). Они могут использоваться как компонентами самой системы, так и сторонними программами и играми для работы с процессором, памятью и прочими устройствами компьютера. Один и тот же модуль динамической библиотеки иложет использоваться одновременно несколькими приложениями сразу. Яркий пример — DirectX. Как правило все подобные инструменты ставятся пакетно, распаковывая в системную папку сразу все необходимые элементы и модули. Но иногда бывают случаи, когда необходимой библиотеки нет или используется неактуальная версия. Тогда необходимо скачать в Интернете нужный файл, а затем зарегистрировать библиотеку DLL в Windows, чтобы система смогла с ним работать. Как это сделать я сейчас подробно расскажу.

Регистрация библиотеки DLL в Windows 10, Windows 11 и предыдущих версий системы

Дальнейшие шаги описаны в предположении, что DLL, которую нужно зарегистрировать, уже находится в нужном расположении: папке C:WindowsSystem32, C:WindowsSysWOW64 или, в некоторых случаях — отдельных папках программ, к которой относится соответствующая библиотека, например, для 1С — C:Program Files1cv8номер_версииbin (или Program Files x86 в случае 32-битной версии).

Читать еще:  Скачать CakeWalk Sonar последнюю версию

Прежде чем приступить к регистрации библиотеки, учитывайте следующие моменты:

  • В x64 версиях Windows 64-битные DLL хранятся в System32, а 32-битные — в SysWOW64 (у некоторых начинающих пользователей бывает обратное предположение исходя из имён папок).
  • Файлы DLL x64 и x86 (32-бит) — это разные файлы. И если прямого указания на разрядность в месте загрузки файла нет, то чаще это 32-битный файл (что не мешает ему работать в x64 системе), но это не всегда так.
  • Для регистрации библиотеки DLL используется системный инструмент regsvr32.exe, который также доступен в двух версиях, которые лежат в папках System32 и SysWOW64 (в случае 64-битных систем). По умолчанию при описываемых далее действиях запускается x64 версия.
  • 32-битным программам и играм (по умолчанию устанавливаются в Program Files x86 в 32-битных системах) для работы нужны 32-битные DLL, не зависимо от разрядности Windows.

Сам процесс регистрации в общем случае состоит из следующих шагов:

  1. Нажмите клавиши Win+R на клавиатуре (Win — клавиша с эмблемой Windows). Также можно нажать правой кнопкой мыши по кнопке «Пуск» в Windows 11 или Windows 10 и выбрать пункт контекстного меню «Выполнить».
  2. Введите команду regsvr32.exe путь_к_файлу, например, для регистрации библиотеки DLL COMCNTR.DLL в 1С (для 64-бит) команда может иметь вид:

Возможна и неудача — сообщение об ошибке «Модуль dll загружен, но точка входа DllRegisterServer не найдена. Проверьте, что файл является правильным файлом DLL или OCX и повторите попытку». Подробнее об ошибке — в следующем разделе статьи.

Ошибка регистрации regsvr32 точка входа DllRegisterServer не найдена

Дополнительно: для регистрации классов из библиотек DLL .NET Framework в COM с созданием необходимых записей в реестре используется regasm.exe из .NET SDK, причем базовая команда регистрации DLL выглядит тем же образом, что и в случае с regsvr32.exe. Подробнее по использованию regasm — https://docs.microsoft.com/ru-ru/dotnet/framework/tools/regasm-exe-assembly-registration-tool.

Из-за чего dll пропадает, и как это исправить?

  • Windowsl;
  • Msvcp100;
  • Unarc;
  • Binkw32;
  • Xinput1_3;
  • X3DAUDIO1_7.

Скачать DLL файлы для Windows 10 можно сразу несколькими путями. Если у вас высветилась ошибка с конкретным документом, то вы можете найти у нас на сайте именно его. Если же у вас просто проблемы, то мы рекомендуем массово загрузить чистые и оригинальные системные файлы. Для этого вы можете использовать оригинальную ОС. Другой вариант – скачать специализированную программу, например DLLSuite. В этом случае вам не придется ничего делать самому, за вас все сделает программу.

Как зарегистрировать DLL-библиотеку в Windows

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

Как понять, что у нас проблемы с COM

Для этого нажимаем кнопку «Проверить настройки» удерживая клавишу «Shift» на клавиатуре:

При нормальной работе COM отчёт будет примерно таким:

При проблемах же с COM возникнет вот такая или похожая ошибка:

Ещё может писать, что -то типа » Не удалось создать программное подключение к 1С «.

Да, судя по тесту, у нас проблемы с COM

Прежде всего, о какой именно библиотеке идёт речь? Эта библиотека comcntr.dll, которая находится в папке bin конкретной платформы 1с:

Эта библиотека устанавливается и автоматически регистрируется в системе при установке платформы.

Кроме того, обновлятор перед тем как подключаться к базе через внешнее соединение сам дополнительно регистрирует в системе библиотеку из нужной версии платформы при помощи команды:

Итак, что мы можем предпринять?

Шаг №0

Обратите внимание на утилиту для отображения и регистрации библиотек RegDllView. При помощи неё вы как минимум сможете контролировать результат работы следующих шагов.

Шаг №1

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

Чтобы понять какая у нас платформа (базовая или проф) выполним вот этот пункт.

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

Шаг №2

Далее пробуем запустить обновлятор с правами администратора.

Если у вас включён UAC, то добиться этого можно, нажав на ярлыке обновлятора правой кнопкой, и выбрав вариант «Запуск от имени администратора».

Далее выбираем базу и нажимаем кнопку «Проверить настройки». Если ошибка пропала и больше не воспроизводится даже при обычном запуске обновлятора (без прав администратора) — поздравляю, проблема решена. Если нет — идём дальше.

Шаг №3

В 32-битной версии ОС пробуем выполнить команду

В 64-битной версии ОС команда будет такой:

— для регистрации 64-битной платформы 1С:

— для регистрации 32-битной платформы 1С:

Эти команды запускаем от имени пользователя с правами администратора. А при включённом UAC, запускаем cmd через «Запуск от имени администратора», либо через такой же запуск написанного батника.

Если команда регистрации не помогла, то нужно предварительно удалить регистрацию библиотеки comcntr.dll, запустив ту же команду вызова regsvr32 с ключом /u

Если и это не помогло, попробуйте переустановить платформу 1С в режиме Исправить, а затем зарегистрируйте библиотеку, как написано выше.

Если этот шаг не помог — идём дальше.

Шаг №4

Похоже, что у обновлятора не получается зарегистрировать COM компоненту из-за настроек безопасности на вашем сервере.
В этом случае:

  1. Заходим в Панель управления — Администрирование — Службы компонентов.
  2. Переходим к ветке Компьютеры — Мой компьютер — Приложения COM+.
  3. В контекстном меню выбираем Создать — Приложение. Откроется Мастер установки приложений COM+.
  4. Нажимаем «Далее».
  5. Выбираем «Создать новое приложение».
  6. Вводим имя «V83COMConnector». Устанавливаем переключатель «Серверное приложение». Нажимаем «Далее».
  7. На следующем шаге устанавливаем «Текущий пользователь». Нажимаем «Далее».
  8. Нажимаем «Готово».
  9. В появившейся ветке V83COMConnector переходим к подветке Компоненты.
  10. В контекстном меню выбираем Создать — Компонент. Откроется Мастер установки компонентов COM+.
  11. Нажимаем «Далее».
  12. Выбираем «Установка новых компонентов».
  13. Выбираем файл <каталог 1С>bincomcntr.dll.
  14. Нажимаем «Далее» — «Готово».
  15. Переходим к ветке V83COMConnector.
  16. В контекстном меню выбираем «Свойства». В открывшемся окне переходим на вкладку «Безопасность».
  17. Снимаем галку «Принудительная проверка доступа для приложений». Ставим галку «Применить политику программных ограничений». Устанавливаем Уровень ограничений — «Неограниченный».
  18. Нажимаем «ОК».

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

Шаг №5

Бывает так, что помогает только повторная переустановка платформы (при этом происходит корректная регистрация компоненты).

Шаг №6

Если проблема начала возникать сразу после обновления платформы 1с, то вероятнее всего новой версии платформы 1с не хватает какого-нибудь сервиспака или обновления для вашей операционной системы. Поэтому если есть возможность — ставим их все, если нет — действуем выборочно согласно этой ссылке.

Шаг №7

Бывает так, что всё работает при обычном запуске обновлятора, но не работает при запуске с повышением привилегий до администратора, когда вы запускаете обновлятор через пункт меню «Запустить от имени администратора» или из программы (типа TotalCommander), которая сама запущена с повышенными привилегиями.

Наверняка есть и другие экзотические случаи о которых я пока не знаю — пожалуйста, пишите о них мне на почту helpme1c.box@gmail.com, чтобы я смог дополнить эту статью.

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

Владимир Милькин

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Ссылка на основную публикацию
Adblock
detector