Поделиться через


Ошибка 0x80004005 при попытке зарегистрировать библиотеку DLL WebClass

Эта статья поможет устранить проблему, из-за которой при регистрации WebClass библиотеки DLL может возникнуть непредвиденная ошибка.

Исходная версия продукта: Internet Information Server
Исходный номер базы знаний: 307495

Симптомы

Если вы используете приложение Microsoft Internet Information Server (IIS) для создания библиотеки динамической компоновки (WebClassDLL) в Visual Basic 6.0, при попытке зарегистрировать библиотеку DLL вы получите следующее сообщение об ошибке:

Сбой DLLRegisterServer в <пути к библиотеке DLL> .
Код возврата: 0x80004005

Это сообщение об ошибке возникает при попытке зарегистрировать библиотеку DLL на другом компьютере, а не на том, на котором она была создана.

Причина

Файлы WebClass во время выполнения должны быть установлены для регистрации библиотеки WebClass DLL. Эта ошибка возникает, если вы пытаетесь зарегистрировать библиотеку DLL на компьютере, на котором отсутствуют соответствующие файлы времени выполнения, установленные и зарегистрированные.

Решение

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

  • Лучший способ развертывания WebClass — использовать мастер упаковки и развертывания. Мастер пакетов и развертывания упаковывает зависимые библиотеки DLL WebClass, когда производится WebClass развертывание.
  • Скопируйте файл Mswcrun.dll и зарегистрируйте его на компьютере, на котором вы пытаетесь зарегистрировать WebClass DLL.

Шаги для воспроизведения поведения

  1. В Visual Basic 6.0 используйте опцию проекта приложения IIS для создания WebClass.
  2. Скопируйте библиотеку DLL на компьютер, который не имеет Mswcrun.dll файла.
  3. В командной строке введите regsvr32 WebClass DllName.dll , чтобы зарегистрировать библиотеку DLL.