При регистрации DLL-файла или установке приложения, которое пытается это сделать автоматически, процесс может прерваться сообщением «Не удалось выполнить вызов DllRegisterServer с кодом ошибки 0x80040200». В большинстве случаев ее причиной является проблема с разрешениями. Чтобы ее обойти, попробуйте зарегистрировать библиотеку с доступом администратора.
Но если сбой возникает при инсталляции приложения, нужно повторно зарегистрировать DLL. В случае, когда ошибка связана с OCX-файлом, переместите его в папку System32 перед повторной попыткой установить программу.
Отмена регистрации DLL-файла
Если сталкиваетесь с ошибкой 0x80040200 при попытке отменить регистрацию DLL-библиотеки вручную, скорее всего, для выполнения этой операции нет достаточных разрешений. В этом случае запустите «regsvr32» в командной строке с повышенными правами.
Выведите на экран окно поиска Windows и наберите «командная строка». Щелкните правой кнопкой на найденный результат и выберите вариант запуска от имени администратора.
В консоли выполните команду для отмены регистрации библиотеки:
regsvr32 /u *.dll
Вместо звездочки укажите имя проблемного DLL-файла.
При успешном завершении операции перезагрузите компьютер. Затем выполните установку, которая прерывалась кодом 0x80040200.
Перерегистрация файла
Если ошибка возникает в ходе установки программы, скорее всего, она возникает из-за некоторых зависимостей, которые не могут загрузиться должным образом. Для ее решения запустите установщик с повышенными правами, затем отмените регистрацию библиотеки и зарегистрируйте проблемную зависимость вручную.
Откройте Проводник (Win +E) и перейдите в папку установщика, который не удается запустить. Кликните по нему правой кнопкой мыши и выберите в меню пункт запуска от имени администратора.
Следуйте инструкциям до завершения процесса. Если видите сообщение с кодом 0x80040200 – закройте окно и перейдите к следующему шагу.
Откройте командную строку с правами администратора через окно системного поиска.
В консоли запустите по очереди следующие команды, подтверждая выполнение каждой на Enter, чтобы сначала отменить регистрацию, а затем повторно зарегистрировать зависимость:
- *.ocx /UNREGISTER
- *.ocx /REGSERVER
Примечание: Вместо звездочки укажите наименование файла.
После успешного окончания, перезагрузите ПК и посмотрите, устранена ли проблема.
Запуск OCX-файла из каталога System32
Если видите, что не удается выполнить вызов DllRegisterServer при работе с файлом *.ocx, ошибка указывает на проблемы с разрешениями. Попробуйте переместить OCX в папку System32 и запустить оттуда для проверки, что он имеет требуемый доступ.
В Проводнике перейдите в локацию с OCX-файлом. Кликните по нему правой кнопкой и выберите пункт «Вырезать».
Перейдите по пути C:\Windows\System32 и вставьте файл, который только что скопировали в буфер обмена.
После этого повторите установку приложения еще раз и посмотрите, прерывается ли она сообщением 0x80040200.
Инженер-программист