Top-office11.ru

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

Что делать, если отсутствует библиотека comctl32.dll?

Что делать, если отсутствует библиотека comctl32.dll?

nticompass Level 1
Level 1Posts: 6 Joined: Sun Sep 03, 2017 11:06 am

Wine can’t load comctl32.dll

Post by nticompass » Sun Sep 03, 2017 11:21 am

I am using wine-2.3 (Staging) on Gentoo, compiled with gcc 6.3.0. I have both the 32- and 64-bit versions installed. (More info, like USE flags and such: https://pastebin.com/ZeYTSWL9)

I am having an issue opening pretty much any wine exe (like `wine notepad`), including winecfg. This is what I am seeing:

Bob Wya Level 12
Level 12Posts: 3046 Joined: Sat Oct 16, 2010 7:40 pm Location: Scotland Contact:

Re: Wine can’t load comctl32.dll

Post by Bob Wya » Sun Sep 03, 2017 4:05 pm

=sys-devel/gcc-6.3.0 is what I’m using to build Wine / Wine Staging with no noticeable issues.
I simply haven’t bothered yet with the 6.4.0 release upgrade.
Using clang on the other hand could lead to some subtle compilation issues — since it isn’t as widely tested.

I’d probably have to see the full app-emulation/wine build log — to see if there is any suspect items in the build process.

Any reason you’re not using a newer version of Wine? Version 2.3 is quite old now. The current Wine Staging release is 2.15.

nticompass Level 1
Level 1Posts: 6 Joined: Sun Sep 03, 2017 11:06 am

Re: Wine can’t load comctl32.dll

Post by nticompass » Sun Sep 03, 2017 4:22 pm

I do have `CC=»clang»` set globally, but I have it overridden for wine. wine uses `CC=»gcc»`. I tried compiling wine with clang, but it failed and instead of debugging it, I just changed it to use gcc.

I am using 2.3 because any newer versions are currently masked in Gentoo. I could use 2.12 or 2.13, but I’d have to unmask it first.

It doesn’t look like I have the build log, I’m not sure it saves logs from good builds, only failed ones.

Bob Wya Level 12
Level 12Posts: 3046 Joined: Sat Oct 16, 2010 7:40 pm Location: Scotland Contact:

Re: Wine can’t load comctl32.dll

Post by Bob Wya » Mon Sep 04, 2017 11:43 am

The: app-emulation/wine package has been depreciated for months — in the main Gentoo Portage tree.
See Gentoo Wiki: Wine — New Packaging .
Most Gentoo users, including myself, have moved over to the newer multi-slot Wine packages.

The newer Gentoo Wine packages: app-emulation/wine- ; are only masked against one bug.
A bug I cannot even reproduce — winegcc not working when using multi-slot Wine.
See Gentoo Bugzilla: Bug 625560 — app-emulation/wine- && app-eselect/wine: winegcc fails to link when using a variant symlink other than /usr/bin/winegcc for the details.

I’ve got both versions (multislot Wine and the older single slot Wine) in my Overlay ::bobwya .
My multislot Wine implementation/fork has a lot of extra features — that the main Gentoo version doesn’t support.
I aim for same day release updates — in my Wine packages.
No Gallium D3D9 support however — as I’m a 100% Nvidia «shop» here.

That will log all Portage builds to the directory: «/var/log/portage/build» (example only!!) with gzip compression.
This directory should be owned by: portage:portage.
I’ve also got a Cron job to recompress these files with xz compression — as 2+ years worth of build logs can be a SSD/HDD space hog!
But realistically most people could delete build logs >1-2 weeks old.

Читать еще:  Где скачать драйвера для принтера Canon PIXMA MP140

Anyway I’d need to take a look at the app-emulation/wine build log to be able to help you any more.
But you’d need to be building a supported Wine package (either my own single slotted Wine package — which is maintained — or one of the newer mutlislotted Wine packages).

Personally I think using a mixed toolchain, like you are, is going to lead to a world of extra pain — for little benefit.

Причины появления ошибки

Ознакомившись с причинами, в 90 процентах случаев пользователь знает, где «согрешил», поэтому рассмотрим каждую подробно:

  1. Заражение вирусом. Обратите внимание на то, устанавливали ли вы в недавнее время программы из сомнительного источника. Возможно, появление ошибки связано с недавней инсталляцией нежелательного или вредоносного приложения.
  2. Нет файла. Как вариант, антивирусный помощник обнаружил и удалил зараженный файл. Проверьте «Корзину» и карантин антивируса на присутствие comctl32.dll.
  3. Сбой в игре или приложении. Иногда данная проблема возникает по вине приложений или игр, которые интенсивно используют ресурсы графического адаптера.
  4. Устаревшая версия драйвера или проблема с оборудованием. Драйверы не умеют самостоятельно обновляться без стороннего ПО, а софт идет в ногу со временем. Если ваша машина долго не чистилась от пыли – возможно физическое повреждение оборудования по причине перегрева.

Исправлено: COMCTL32.DLL отсутствует при запуске приложений в Windows 7 —

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

«COMCTL32.DLL отсутствует»
«COMCTL32.DLL не найден»
«Не удается найти COMCTL32.DLL»
«Отсутствует необходимый компонент: COMCTL32.DLL»
«Это приложение не удалось запустить, потому что COMCTL32.DLL не был найден. Переустановка приложения может решить проблему»

Comctl32

Пользователь Windows 7, затронутый этой проблемой, просто теряет способность запускать и использовать значительную часть приложений, которые они имеют на своем компьютере, так как его компьютер не может найти и / или получить доступ к COMCTL32.DLL файл — файл, без которого не могут работать многие приложения.

Как и большинство других файлов DLL, COMCTL32.DLL файл должен находиться в C: Windows System32, и когда большинство пользователей, затронутых этой проблемой, переходят к C: Windows System32, они видят, что COMCTL32.DLL файл есть. Почему эти пользователи все еще получают сообщения об ошибках, тогда? Ну, то COMCTL32.DLL файлы на их компьютере повреждены, и что Windows означает, что не может найти COMCTL32.DLL является то, что он не смог найти полную, здоровую версию COMCTL32.DLL файл.

Будучи не в состоянии использовать большое количество приложений на вашем компьютере, потому что ваш компьютер не имеет COMCTL32.DLL файл или ваш компьютер COMCTL32.DLL Файл был поврежден может быть реальной болью. Это особенно актуально, когда ваш интернет-браузер сильно зависит от COMCTL32.DLL файл, и эта проблема делает вас не в состоянии использовать его. К счастью, есть довольно много решений, которые могут решить эту проблему, и следующие являются наиболее эффективными:

Решение 1. Запустите сканирование SFC

Сканирование SFC (Проверка системных файлов) анализирует все системные файлы на компьютере на наличие повреждений и повреждений. Если сканирование SFC обнаруживает какие-либо поврежденные или поврежденные системные файлы, это устраняет проблемы, заменяя поврежденные и / или поврежденные системные файлы исправными, кэшированными резервными копиями файлов. Утилита SFC — это встроенная утилита Windows, присутствующая во всех версиях операционной системы Windows, в том числе Windows 7. Чтобы запустить сканирование SFC на компьютере под управлением Windows 7, вам необходимо:

  1. Открой Стартовое меню.
  2. Ищи «CMD».
  3. Нажмите правой кнопкой мыши на результат поиска под названием CMD и нажмите на Запустить от имени администратора.
  4. Тип SFC / SCANNOW в возвышенный Командная строка и нажмите Войти начать сканирование SFC.
  5. Дождитесь запуска сканирования SFC. Сканирование SFC может занять значительное время для завершения.
  6. После завершения сканирования SFC закройте повышенную Командная строка, запустить снова компьютер и проверьте, сохраняется ли проблема после загрузки компьютера.
Читать еще:  Как изменить масштаб в Автокаде

sfcscannow

Решение 2: заменить поврежденный COMCTL32.DLL файл со здоровым

Эту проблему можно исправить почти во всех случаях, просто заменив поврежденную или отсутствующую COMCTL32.DLL файл со здоровым. Для того, чтобы заменить поврежденный COMCTL32.DLL файл с здоровым, однако, вы сначала должны получить в свои руки здоровый COMCTL32.DLL файл. Вы можете приобрести здоровый COMCTL32.DLL файл, просто нажав Вот и скачать его. Кроме того, вы также можете получить здоровую COMCTL32.DLL файл с другого компьютера, работающего в той же версии и архитектуре Windows 7, что и ваш компьютер — просто прыгайте на таком компьютере, перейдите к C: Windows System32, найдите COMCTL32.DLL файл и скопируйте его на USB или другое устройство хранения.

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

  1. Открой Стартовое меню.
  2. Ищи «CMD».
  3. Нажмите правой кнопкой мыши на результат поиска под названием CMD и нажмите на Запустить от имени администратора.
  4. Введите каждый из следующих в повышенных Командная строка, прессование Войти после ввода в каждом:

takeown / f c: windows system32 comctl32.dll
icacls c: windows system32 comctl32.dll / АДМИНИСТРАТОРЫ ГРАНТА: F

Замечания: Если Windows установлена ​​на раздел жесткого диска / SSD вашего компьютера, кроме С, вам придется соответствующим образом настроить каталоги в этих командах.

  1. Введите следующее в повышенных Командная строка и нажмите Войти:

скопировать SOURCE_FILE_PATH DESTINATION_PATH

Замечания: В приведенной выше команде SOURCE_FILE_PATH должен быть заменен путем и именем файла здорового COMCTL32.DLL файл и DESTINATION_PATH должен быть заменен путем и именем файла поврежденного COMCTL32.DLL файл. Конечный продукт должен выглядеть примерно так:

скопируйте d: downloads comctl32.dll c: windows system32 comctl32.dll

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

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

Решение 3. Выполните восстановление системы

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

  1. нажмите Windows Logo ключ + р открыть Бежать
  2. Тип EXE в Бежать диалог и нажмите Войти запустить Восстановление системы полезность.
  3. Нажмите на следующий. Если Восстановление системы рекомендует восстановить на компьютере автоматически выбранную точку восстановления на этом экране, выберите Выберите другую точку восстановления вариант, а затем нажмите на следующий.
  4. Нажмите на нужную точку восстановления в списке, чтобы выбрать ее, а затем нажмите на следующий. Обязательно выберите точку восстановления, созданную задолго до того, как компьютер начал страдать от этой проблемы.
  5. На Подтвердите вашу точку восстановления экран, нажмите на Конец.
  6. Нажмите на да в диалоговом окне, которое появляется, чтобы начать Восстановление системы.
Читать еще:  Объединение карты памяти и накопителя телефона в Android

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

Откат состояния системы

Из-за системных сбоев и внесения изменений в настройки могут возникнуть проблемы с запуском тех или иных приложений. Для восстановления рабочего состояния Windows необходимо выполнить откат до контрольной точки. Сделать это можно стандартными средствами системы:

  1. С помощью поиска откройте окно «Восстановление», которое находится в панели управления.
  2. Запустите процедуру восстановления соответствующей кнопкой.
  3. На первом этапе переключитесь к варианту ручного выбора контрольной точки.
  4. Затем в списке найдите ту сохраненную точку, во время создания которой компьютер функционировал исправно. Ориентируйтесь по событиям, прикрепленным к контрольному пункту, а также по дате.
  5. Запустите процедуру восстановления. После этого компьютер перезагрузится.

Откат состояния системы

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

Что значит ошибка и причины её возникновения

В большинстве случаев появление ошибок с упоминанием kernel32.dll напрямую коррелирует с проблемами в работе системной памяти. При запуске Виндовс система загружает библиотеку kernel32.dll в защищённую область памяти, дабы другие программы не использовали указанную область для своих задач.

Впоследствии если какая-либо программа всё-же пытается обратиться к защищённой области памяти, то это приводит к появлению различных ошибок с упоминанием кернел32.dll.

В нашем же случае появление указанного сообщения «Точка входа в процедуру SetDefaultDllDirectories не найдена в библиотеке DLL kernel32.dll» сигнализирует об отсутствии у системы данных о запрашиваемой программой функции. Обычно это вызвано использованием устаревшей версии ОС, или отсутствием в системе ряда важных системных обновлений (в частности, обновления KB2533623, предназначенного для обеспечения корректной и безопасной загрузки внешних библиотек).

Картинка Discord

При этом указанная проблема может возникнуть в любой момент работы ОС – при её запуске или завершении, во время просмотра фильма или времяпровождения за компьютерной игрой. А программами, вызывающими появление ошибки, обычно являются «Discord», «Xperia Companion», некоторые антивирусы и другие аналоги.

Как распознать ошибки Kernel32.dll

Мы уже выяснили что файл kernel32 является сердцем вашей операционной системы.

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

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

Я лично наблюдал такое несколько раз, например, при использовании антивирусной программы McAfee.

Заключение

Неполадки в компьютере, вызванные kernel32.dll, наблюдаются во всей линейке операционной системы:

Правильно настроить работоспособность можно вручную, а можно воспользоваться утилитами.

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

Посмотри также видео с инструкцией по устранению ошибки:

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

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