Ошибка 0x80070005 в 1С при вызове dllregisterserver означает, что
Windows отклонила операцию регистрации COM/DLL. Обычно это связано с правами,
разрядностью файла или блокировкой со стороны защиты.
Выполняйте шаги по порядку: от простых проверок до восстановления компонентов и анализа журналов.
⚠️ Обязательно перед исправлением
Создайте точку восстановления: Win + R →
sysdm.cpl → «Защита системы» → «Создать». Это обязательный шаг
перед регистрацией DLL и изменением прав.
Способ 1. Запустить 1С и консоль от имени администратора
- Закройте 1С и связанные процессы.
- Откройте CMD/PowerShell через «Запуск от имени администратора».
- Повторите действие, при котором появлялся код 0x80070005.
Способ 2. Проверить разрядность DLL и выбрать правильный regsvr32
%windir%\System32\regsvr32.exe "C:\Path\component64.dll"
%windir%\SysWOW64\regsvr32.exe "C:\Path\component32.dll" Способ 3. Перерегистрировать библиотеку с предварительной отменой
regsvr32 /u "C:\Path\component.dll"
regsvr32 "C:\Path\component.dll" Способ 4. Проверить права NTFS на папку с DLL и каталоги 1С
- Откройте свойства папки с DLL → «Безопасность».
- Выдайте чтение и выполнение для нужной учётной записи.
- Проверьте наследование прав на подпапки.
icacls "C:\Program Files\1cv8"
icacls "C:\Path\component.dll" Способ 5. Проверить службы RPC и COM+
sc query RpcSs
sc query DcomLaunch
sc query EventSystem Способ 6. Проверить DCOM-разрешения через dcomcnfg
- Нажмите
Win + Rи выполнитеdcomcnfg. - Откройте: «Службы компонентов» → «Компьютеры» → «Мой компьютер» → «Свойства».
- Во вкладках COM Security проверьте Access Permissions и Launch and Activation Permissions.
Способ 7. Исключить блокировку антивирусом и SmartScreen
- Временно отключите защиту в реальном времени для проверки.
- Добавьте папки 1С и DLL в исключения.
- Верните защиту обратно после теста.
💡 Совет
Если DLL скачана из интернета, снимите блокировку в свойствах файла
(«Разблокировать») перед запуском regsvr32.
Способ 8. Восстановить системные файлы Windows
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow Способ 9. Проверить ошибку в журналах и ProcMon
- Откройте Event Viewer и найдите события на момент ошибки.
- Запустите ProcMon и отфильтруйте по
ACCESS DENIED. - Исправьте конкретный путь или объект, к которому нет доступа.
Системные пути и журналы
- Каталог 1С (обычно):
C:\Program Files\1cv8. - 32-битный regsvr32:
C:\Windows\SysWOW64\regsvr32.exe. - 64-битный regsvr32:
C:\Windows\System32\regsvr32.exe. - Журналы событий:
C:\Windows\System32\winevt\Logs. - Лог CBS:
C:\Windows\Logs\CBS\CBS.log. - Лог DISM:
C:\Windows\Logs\DISM\dism.log.
FAQ
Почему в 1С появляется 0x80070005 при регистрации DLL?
Код 0x80070005 означает отказ в доступе. Чаще всего не хватает прав администратора, блокирует антивирус или у процесса нет доступа к COM/DCOM и системным папкам.
Каким regsvr32 регистрировать библиотеку: из System32 или SysWOW64?
Для 64-битной DLL используйте regsvr32 из System32, для 32-битной — из SysWOW64. Неверная разрядность часто вызывает ошибки регистрации.
Нужно ли запускать 1С и regsvr32 от имени администратора?
Да. Для операций регистрации COM-библиотек и изменения прав это обязательный шаг. Без повышенных прав Windows возвращает 0x80070005.
Могут ли службы COM+ вызывать отказ в доступе в 1С?
Да. Если службы RPC или COM+ отключены, регистрация и вызов COM-объектов в 1С работают нестабильно и могут завершаться кодом 0x80070005.
Что делать, если после всех шагов ошибка в 1С остаётся?
Проверьте журналы событий и ProcMon, восстановите системные файлы SFC/DISM и протестируйте запуск 1С в новой локальной учётной записи администратора.