код ошибки 0x80040154 windows 10 как исправить

Содержание

Исправление ошибки Windows Installer 0x80040154

В этой статье я расскажу об исправлении одной очень распространенной ошибки Windows Installer. Обыскавши Интернет как русскоязычный, так и англоязычный, включая форумы и ньюсгруппы Microsoft, я понял что ошибка довольно распространенная, однако исправить ее, на самом деле никому не удавалось.

Суть проблемы

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

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

Недолго думая, я полез в интернет, ввел в поиск появившееся сообщение, и, «О ужас!» — я увидел сотни постов людей с этой проблемой! В русскоязычном и англоязычном сегменте Интернета у множества людей была аналогичная проблема, и никто ее не смог решить по существу.

Решение проблемы

Для начала я включил Log-файл установщика Windows. Как включить лог Windows Installer вы можете почитать здесь, или поискать в любом поисковике по ключевому слову «voicewarmup».

Лог-файлы появляются во временной папке пользователя, которая обычно находится по пути C:\Users\имя_профиля\AppData\Local\Temp. Открыв лог, я увидел следующую ошибку:

MSI (c) (B8:84) [22:08:06:894]: Failed to connect to server. Error: 0x80040154

Поискав по коду ошибки в Интернете, и не нашедши никаких способов решения проблемы, я решил подумать логически.

Что означает ошибка 0x80040154? Поискав в поисковике, и воспользовавшись утилитой Error Lookup, я определил, что ошибка означает «Класс не зарегистрирован».

Обычно такая ошибка появляется, когда вы запрашиваете у системы создать COM-объект, который не был должным образом зарегистрирован в реестре. Но как определить какой именно объект не зарегистрирован?

Для начала я воспользовался старым добрым отладчиком WinDbg, который входит в пакет Debugging Tools For Windows. Мне понадобилась именно 64-разрядная версия данного отладчика.

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

Я предпочитаю указывать отладчику путь для поиска символов через переменную среды _NT_SYMBOL_PATH, которая должна быть задана как: C:\Symbols;srv*C:\Symbols*http://msdl.microsoft.com/download/symbols. В данном случае папка C:\Symbols — это хранилище загруженных символов на жестком диске, чтобы отладчик каждый раз не лез в интернет за ними.

Загрузил я в отладчик файл c:\windows\system32\msiexec.exe и задал для него параметры командной строки так, чтобы он открыл .msi файл. В моем случае параметром командной строки было: /i «C:\Users\MAV\Desktop\ActivePerl-5.12.4.1205-MSWin32-x64-294981.msi» однако можно задавать путь к любому другому .msi файлу.

Сам по себе отладчик, конечно не решит проблему, нужно ее локализовать. Поразмыслив, какие функции могут создавать COM-объекты, я остановился на CoCreateInstance, CoCreateInstanceEx и CoGetClassObject

Для установки точек прерывания на эти функции вводим в командной строке отладчика:
bp ole32!CoCreateInstance
bp ole32!CoCreateInstanceEx
bp ole32!CoGetClassObject
Если точки останова у вас не ставятся, значит вы неправильно настроили символы.

После запуска приложения (F5), срабатывает точка останова на ole32!CoCreateInstance. Если точка останова не срабатывает, а выпадает окно с параметрами Wndows Installer, то вы неправильно указали параметры командной строки для запуска.

Давайте теперь посмотрим, из какого же места кода вызывается создание нашего объекта, для этого мы можем нажать Debug->Step Out (Shift+F11). Мне пришлось нажать указанную комбинацию дважды, для того чтобы выйти в исходную вызывающую функцию.

Исходная вызывающая функция называется msi!CreateMsiServerProxy и, очевидно, находится в модуле msi.dll.

Запомнив имя функции, а также примерный вид искомого кода, я открыл дизассемблер IDA Pro, и загрузил в него файл msi.dll. Следует отметить пару особенностей данного отладчика: во первых, IDA любит блокировать доступ к исследуемому файлу, во вторых, она создает в папке с исследуемым файлом несколько своих файлов баз данных, так что я рекомендую копировать исследуемые файлы в отдельную папку. В третьих, IDA не всегда подгружает файлы с символами, поэтому рекомендую в указанную отдельную папку также скопировать файл msi.pdb из вышеуказанной папки C:\Symbols.

После нахождения функции CreateMsiServerProxy, находим знакомые строки кода в ней:

Не иначе как функция пытается создать объект по CLSID IID_IMsiServer. Здесь я не буду вдаваться в подробности COM и искать различия между CLSID и IID, важно что я получил зацепку — имя интерфейса ID_IMsiServer и CLSID .

Windows Registry Editor Version 5.00

После импорта ключа реестра я вновь попробовал запустить .msi файл, и, «О чудо!», он запустился, после чего я успешно установил ActivePerl.

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

Выводы

Спасибо за внимание, я очень надеюсь что статья вам понравилась, жду ваших отзывов, а также с удовольствием отвечу на ваши вопросы.

Источник

2147221164 (0x80040154): Класс не зарегистрирован — что делать?

В программном обеспечении 1С, как и в любом другом, иногда возникают ошибки. Это не дает софту нормально функционировать и может затормозить работу целой организации. Поэтому нужно знать, как справляться с различными сбоями. В частности, сегодня мы разберем, из-за чего возникает ошибка «2147221164 (0x80040154): Класс не зарегистрирован», и что нужно сделать, чтобы ее исправить.

Когда появляется ошибка 2147221164?

Рассматриваемая ошибка появляется из-за конфликта версий 1С, которые в данный момент устанавливают между собой соединение. Разберем подробнее. Информационные БД 1С производят обмен данных при помощи СОМ-соединения. И, если, например, платформа 1С:Предприятие конфигурации 8.3 пытается установить связь с 1С версии 8.1, то на этом этапе при попытке подключения к СОМ-серверу и выскакивает данная ошибка.

Для начала определим, что у сервера 1С есть несколько версий:

Неполадки появляются на самом сервере с БД. Корень проблемы в том, что версии 1С архитектуры х64 не могут напрямую обратиться к 32-битной библиотеке comcntr.dll. В этом случае соединение происходит при помощи приложений СОМ+, способных взаимодействовать с библиотеками х86.

Справляемся с проблемой

Заканчиваем с теорией и переходим к практике – пробуем исправить ошибку «2147221164 (0x80040154): Класс не зарегистрирован».

Регистрируем библиотеку comcntr.dll

Ошибка может проявиться, если не зарегистрирована библиотека comcntr.dll. Решаем ее следующим образом. Вызываем строку «Выполнить» (кликнув ПКМ по кнопке «Пуск») и вводим regsvr32.exe «C:\Program Files(86)\1cv82\8.3.XX.XXXX\bin\comcntr.dll». Нажимаем ОК и, если все прошло корректно, то мы увидим сообщение об успешной регистрации библиотеки.

Создаем новое приложение СОМ+

Если библиотека зарегистрирована, но проблема остается, то кликаем ПКМ по кнопке «Пуск» (для ОС Windows 10) и вызываем «Панель управления». Затем входим в раздел «Система и безопасность», после чего переходим в «Администрирование». Появляется окно, в котором мы ищем строку «Службы компонентов» и открываем ее двойным щелчком ЛКМ. В новой консоли два раза кликаем ЛКМ по папке «Компьютер» и затем «Мой компьютер». Перед нами появляется список папок. ПКМ нажимаем на «Приложения СОМ+» и выбираем «Создать» → «Приложение».

Далее действуем следующим образом.

Мы рассмотрели соединение с базой из программы 1С:Предприятие версии 8.3. Если планируется устанавливать коннект с БД 8.1 из версии 1С 8.2, то нужно добавить нового пользователя. Переходим по пути 1CV8_ComConnect → Роли → CreatorOwner → Пользователи и добавляем новую учетную запись User1CV82, под которой будет производиться запуск сервера 1С версии 8.2.

Источник

Лучшие хитрости, чтобы исправить ошибку 0x80040154

Что такое код ошибки 0x80040154?

Решения

Причины ошибок

Чтобы избежать неудобств при запуске программ на ПК с Windows, рекомендуется устранить ошибку 0x80040154.

Дополнительная информация и ручной ремонт

Вот некоторые из лучших методов, которые вы можете попытаться решить с помощью кода ошибки 0x80040154 на вашем компьютере:

# 1. Используйте Regsvr32.exe для повторной регистрации неисправного компонента COM

Это один из способов решить код ошибки 0x80040154. Regsvr32.exe это программа, которую вы можете использовать для регистрации DLL (Dynamic Link Libraries) и элементов управления ActiveX в реестре.

Чтобы использовать этот файл для повторной регистрации неисправных компонентов COM, просто откройте командную строку с повышенными привилегиями. Если 32-разрядная DLL находится в папке% systemroot% System32, переместите ее в папку% systemroot% SysWoW64.

# 2. Установите и запустите Restoro PC Fixer.

Другой альтернативой является загрузка Restoro. Это новый, продвинутый и инновационный инструмент для ремонта ПК, в котором используется множество утилит, таких как Active X control и class fixer, системный оптимизатор, антивирус и очиститель реестра.

Имеет удобный интерфейс с простой навигацией. Это делает его довольно простым в использовании для всех уровней пользователей. Это безопасно, быстро и совместимо со всеми версиями Windows.

Освободи Себя Активное управление X и утилита класса сканирует весь ваш компьютер, обнаруживает и устраняет все ошибки, такие как 0x80040154, вызывая проблемы ActiveX и ID класса в считанные секунды.

Помимо этого, Restoro предлагает и другие преимущества. Запустив это программное обеспечение в своей системе, вы также можете обеспечить хорошее состояние и производительность ПК, поскольку оно также удаляет антивирусы, устраняет проблемы с реестром, исправляет поврежденные файлы DLL, а также повышает скорость вашего ПК.

DLL-файлы часто могут быть повреждены или повреждены из-за перегрузки данных. Это связано с реестром. Если вы не чистите реестр часто, он перегружается данными и повреждает файлы DLL.

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

Однако, если файлы DLL повреждены из-за атаки вредоносного ПО, антивирусный модуль позаботится о них. Он удаляет все вредоносное ПО, такое как рекламное ПО, шпионское ПО, вирусы и трояны, и восстанавливает ваши файлы.

Нажмите чтобы загрузить Restoro на свой компьютер и устранить ошибку 0x80040154 на своем ПК прямо сейчас!

Источник

Способы самостоятельного решения OLE ошибки «класс не зарегистрирован» с кодом 0x80040154 в операционной системе Windows 7, 8 и 10

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


В данной статье речь пойдет об описании ошибки под номером 0x80040154, а также будут предложены методы исправления. Ошибка не является критической, что уже хорошо, так как полного выхода из операционной системы и вывода синего экрана не вызывает. Это даёт возможность, не выходя из системы, приступить к решению и устранению.

Класс не зарегистрирован при открытии JPG и других изображений

Наиболее часто встречающийся случай — ошибка «Класс не зарегистрирован» при открытии JPG, а также других фотографий и изображений.

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

По завершении проверьте, открываются ли файлы изображений теперь. Если открываются, но вам требуется, чтобы с JPG, PNG и иными фото работала сторонняя программа, попробуйте удалить ее через Панель управления — Программы и компоненты, а затем установить заново и назначить используемой по умолчанию.

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

Если ошибка возникает просто при запуске приложения «Фотографии» Windows 10, то попробуйте способ с перерегистрацией приложений в PowerShell из статьи Не работают приложения Windows 10.

При запуске приложений Windows 10

При возникновении рассматриваемой ошибки при запуске приложений магазина Windows 10, а также при ошибке 0x80040154 в приложениях, опробуйте способы из статьи «Не работают приложения Windows 10», которая была приведена выше, а также попробуйте такой вариант:

Ошибка explorer.exe «Класс не зарегистрирован» при нажатии на кнопку Пуск или вызове параметров

Еще один распространенный вариант ошибки — не работающее меню Пуск Windows 10, или отдельные элементы в нем. При этом о том, что класс не зарегистрирован сообщает explorer.exe, код ошибки тот же — 0x80040154.

Способы исправить ошибку в данном случае:

Если это не помогло, попробуйте также способ, описанный в разделе про службу компонентов Windows.

Не работает «Пуск»

Для устранения проблем с работой меню «Пуск» есть несколько вариантов действий:

Перезапуск «Проводника»

Перезапустить «Проводник» можно через «Диспетчер задач».

Совет! Запомните сочетания клавиш: Ctrl+ALT+DEL — останавливает всю систему и выводит диалоговое окно завершения работы Ctrl+Shift+Esc – вызов «Диспетчера задач».

Диспетчер задач, также, позволяет снимать «зависшие» или вредоносные приложения и контролировать работу системы.

Обновление через «Media Creation Tool»

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

Изменение имя пользователя

Если имя пользователя написано на кириллице, то это может стать причиной ошибки. В таком случае нужно изменить его.

Применение DISM.exe и SFC.exe

DISM.exe («Система обслуживания образов») и SFC.exe («Средство проверки системных файлов») восстанавливают поврежденные системные файлы, удаляют, настраивают и обновляют системные компоненты. Они запускаются через приложение «Выполнить».

Использование Windows PowerShell

Перед использованием PowerShell необходимо закрыть все браузеры и приложения. Запустить программу можно через «Диспетчер задач».

Совет! Самое простое и правильное решение – переустановить Windows и установить заново все приложения.

Ошибка при запуске браузеров Google Chrome, Mozilla Firefox, Internet Explorer

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

Дополнительные действие по исправлению ошибки для Internet Explorer:

По завершении действий, проверьте, была ли исправлена проблема. В случае с Internet Explorer, перезагрузите компьютер.

Для сторонних браузеров, если способы, приведенные выше не сработали, может помочь удаление браузера, перезагрузка компьютера и последующая повторная установка браузера (или удаление разделов реестра HKEY_CURRENT_USER\ SOFTWARE\ Classes\ ChromeHTML\, HKEY_LOCAL_MACHINE\ SOFTWARE\ Classes\ ChromeHTML\ и HKEY_CLASSES_ROOT\ ChromeHTML (для браузера Google Chrome, для браузеров на базе Chromium название раздела может быть, соответственно, Chromium).

Универсальный способ

Указанный ниже метод может сработать вне зависимости от ситуации, в которой появилось сообщение об ошибке:

По некоторым данным, причиной появления ошибки может являться установка iCloud для Windows, а также поврежденный реестр. Если никакие способы не помогают избавиться от неполадки, можно просто сбросить Windows 10 с сохранением или без сохранения данных.

Исправление в службе компонентов Windows 10

Этот способ может сработать вне зависимости от контекста появления ошибки «Класс не зарегистрирован», как и в случаях с ошибкой explorer.exe, так и в более специфичных, например, когда ошибку вызывает twinui (интерфейс для планшетов Windows).

Дополнительная информация

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

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

Регистрация классов вручную

Иногда в исправлении ошибки 0x80040154 может помочь ручная регистрация всех библиотек DLL и компонентов OCX, находящихся в системных папках. Для её выполнения: запустите командную строку от имени администратора, введите по порядку следующие 4 команды, нажимая Enter после каждой (процесс регистрации может занять продолжительное время).

for %x in (C:\Windows\System32\*.dll) do regsvr32 %x /s for %x in (C:\Windows\System32\*.ocx) do regsvr32 %x /s for %x in (C:\Windows\SysWOW64\*.dll) do regsvr32 %x /s for %x in (C:\Windows\SysWOW64\*.ocx) do regsvr32 %x /s

Последние две команды — только для 64-разрядных версий Windows. Иногда в процессе может появиться окно с предложением установить недостающие компоненты системы — сделайте это.

Источник

Ошибка 0x80040154 в Microsoft Security Essentials: методы решения

Ошибка 0x80040154 может появиться на вашем компьютере без каких-либо предвещающих на то событий. Большинство пользователей утверждают, что до начала сессии с ошибкой, их ПК функционировал нормально. 0x80040154 относиться к работе Microsoft Security Essentials.

При ее появлении, пользователь лишается возможности открывать Microsoft Security Essentials или удалять его. Также нужно упомянуть о том, что данная проблема может возникнуть на любой стадии использования Windows, например, во время открытия какого-нибудь почтового клиента или Skype.

Так из-за чего возникает указанная ошибка? Иногда сторонние антивирусы на вашем компьютере могут создавать конфликты с Microsoft Security Essentials. Даже если вы удалите этот конфликтный антивирус, то он все равно, скорее всего, продолжит вызывать проблему, так как тот оставил за собой некоторые файлы в системе. Еще одной причиной может служить заражение вирусами, которые каким-то образом смогли изменить файлы Microsoft Security Essentials, либо повредить их.

Решаем ошибку

Метод №1 Выполнение Восстановления системы

Сразу же давайте начнем с самого простого – восстановление системы. Если ошибка 0x80040154 является следствием воздействия вирусов или вредоносного ПО, то можно выполнить Восстановление, чтобы вернуть свою систему в более стабильное состояние, т.е. вы отмените те изменение в системе, которые привели к этой ошибке.

Теперь вашему компьютеру потребуется перезагрузка и немного времени на выполнение Восстановления системы.

Метод №2 Удаление сторонних антивирусов

Убедитесь, что вы удалили такие сторонние антивирусы, как Norton или McAfee с вашей системы. Если вы не уверены в их установке, то это можно легко проверить. Для этого сделайте следующее:

Как только избавитесь от стороннего антивируса, то попробуйте запустить Microsoft Security Essentials и проверьте наличие ошибки 0x80040154.

Метод №3 Удаление Microsoft Security Essentials

Если файлы Microsoft Security Essentials подверглись каким-то изменениям или были повреждены, то удаление и повторная их установка должна полностью исправить ситуацию.

Для удаления Microsoft Security Essentials достаточно просто зайти в «Программы и компоненты». Однако, этот привычный способ удаления не всегда может избавиться от всех файлов этого пакета антивирусных приложений.

Подождите окончания процесса. Как только все завершиться, перезагрузите свой компьютер. Затем пройдите на сайт Microsoft и скачайте пакет Microsoft Security Essentials. Установите его, а затем проверьте наличие проблемы в виде ошибки 0x80040154.

Источник

Операционные системы и программное обеспечение