Ошибка 0x8007007e не найден указанный модуль

I have a dll library with unmanaged C++ API code I need to use in my .NET 4.0 application. But every method I try to load my dll I get an error:

Unable to load DLL ‘MyOwn.dll’: The specified module could not be found. (Exception from HRESULT: 0x8007007E)

I have read and tried several solutions I have found on the internet. Nothing works..

I have tried using following methods:

[DllImport("MyOwn.dll",  CallingConvention = CallingConvention.Cdecl)]
[return: MarshalAs((UnmanagedType.I4))]
public static extern Int32 MyProIni(string DBname, string DBuser_pass,
    string WorkDirectory, ref StringBuilder ErrorMessage);

When I tried following this article and when I run this example (from the downloaded code) it runs without a problem (the dll used is in the bin/debug folder)

I have copied my dll (along with all the files the it depends on into my bin folder).

I also tried this approach but got the same error:

[DllImportAttribute(MyOwnLibDllPath, EntryPoint="TMproIni")]
[return: MarshalAs(UnmanagedType.I4)]
public static extern  int MyproIni(string DBname, string DBuser_pass, 
    string WorkDirectory, ref StringBuilder ErrorMessage);

Any suggestions?

Chronicler's user avatar

asked Jan 25, 2012 at 12:55

Ingimar Andresson's user avatar

From what I remember on Windows the search order for a dll is:

  1. Current Directory
  2. System folder, C:\windows\system32 or c:\windows\SysWOW64 (for 32-bit process on 64-bit box).
  3. Reading from the Path environment variable

In addition I’d check the dependencies of the DLL, the dependency walker provided with Visual Studio can help you out here, it can also be downloaded for free: http://www.dependencywalker.com

Graviton's user avatar

Graviton

81.9k146 gold badges424 silver badges602 bronze badges

answered Jan 25, 2012 at 13:11

display101's user avatar

5

You can use the dumpbin tool to find out the required DLL dependencies:

dumpbin /DEPENDENTS my.dll

This will tell you which DLLs your DLL needs to load. Particularly look out for MSVCR*.dll. I have seen your error code occur when the correct Visual C++ Redistributable is not installed.

You can get the «Visual C++ Redistributable Packages for Visual Studio 2013» from the Microsoft website. It installs c:\windows\system32\MSVCR120.dll

In the file name, 120 = 12.0 = Visual Studio 2013.

Be careful that you have the right Visual Studio version (10.0 = VS 10, 11 = VS 2012, 12.0 = VS 2013…) right architecture (x64 or x86) for your DLL’s target platform, and also you need to be careful around debug builds. The debug build of a DLL depends on MSVCR120d.dll which is a debug version of the library, which is installed with Visual Studio but not by the Redistributable Package.

answered Sep 5, 2014 at 11:34

Anthony Hayward's user avatar

5

The DLL has to be in the bin folder.

In Visual Studio, I add the dll to my project NOT in References, but «Add existing file». Then set the «Copy to Output Directory» Property for the dll to «Copy if newer».

answered Mar 4, 2016 at 5:28

Jeremy Thompson's user avatar

Jeremy ThompsonJeremy Thompson

62.1k36 gold badges195 silver badges322 bronze badges

1

This is a ‘kludge’ but you could at least use it to sanity-test:
Try hard-coding the path to the DLL in your code

[DllImport(@"C:\\mycompany\\MyDLL.dll")]

Having said that; in my case running dumpbin /DEPENDENTS as suggested by @anthony-hayward, and copying over 32-bit versions of the DLLs listed there into my working directory solved this problem for me.

The message is just a bit misleading, becuase it isn’t «my» dll that can’t be loaded — it’s the dependencies

answered Sep 14, 2017 at 14:09

Black's user avatar

BlackBlack

5,0436 gold badges64 silver badges92 bronze badges

Try to enter the full-path of the dll.
If it doesn’t work, try to copy the dll into the system32 folder.

answered Jan 25, 2012 at 13:00

Headpuster's user avatar

HeadpusterHeadpuster

2671 gold badge2 silver badges9 bronze badges

3

«Unable to load DLL ‘xxx.dll’: The specified module could not be found. (Exception from HRESULT: 0x8007007E)» means the file CAN be found BUT it’s not able to load it. Try to copy the DLL file to the root folder of your application, some DLL libraries need to be available in the root folder of the application in order for it to work. Or check if there are any other depending DLL files required by it.

«Cannot find DLL ‘xxx.dll’: …» means the file CANNOT be found. Try to check the path. For example, [DllImport(@"\Libraries\Folder\xxx.dll")]

answered Mar 23, 2021 at 4:34

JeeShen Lee's user avatar

JeeShen LeeJeeShen Lee

3,4665 gold badges40 silver badges59 bronze badges

2

Ensure that all dependencies of your own dll are present near the dll, or in System32.

answered Jan 25, 2012 at 13:10

Felice Pollano's user avatar

Felice PollanoFelice Pollano

32.8k9 gold badges75 silver badges115 bronze badges

There is one very funny thing (and has a technical relevance) which might waste your hours so thought of sharing it here —

I created a console application project ConsoleApplication1 and a class library project ClassLibrary1.

All the code which was making the p/invoke was present in ClassLibrary1.dll. So before debugging the application from visual studio I simply copied the C++ unmanaged assembly (myUnmanagedFunctions.dll) into the \bin\debug\ directory of ClassLibrary1 project so that it can be loaded at run-time by the CLR.

I kept getting the

Unable to load DLL

error for hours. Later on I realized that all such unmanaged assemblies which are to be loaded need to be copied into the \bin\debug directory of the start-up project ConsoleApplication1 which is usually a win form, console or web application.

So please be cautious the Current Directory in the accepted answer actually means Current Directory of main executable from where you application process is starting. Looks like an obvious thing but might not be so at times.

Lesson Learnt — Always place the unamanaged dlls in the same directory as the start-up executable to ensure that it can be found.

answered Jan 17, 2017 at 9:09

RBT's user avatar

RBTRBT

24.2k21 gold badges159 silver badges240 bronze badges

3

Turn on the fusion logging, see this question for lots of advice on how to do that. Debugging mixed-mode apps loading problems can be a right royal pain. The fusion logging can be a big help.

Community's user avatar

answered Jan 25, 2012 at 13:36

Chris O's user avatar

Chris OChris O

5,0173 gold badges35 silver badges42 bronze badges

In my case one unmanaged dll was depending on another which was missing. In that case the error will point to the existing dll instead of the missing one which can be really confusing.

That is exactly what had happen in my case. Hope this helps someone else.

answered Feb 22, 2019 at 14:05

Rahatur's user avatar

RahaturRahatur

3,1573 gold badges33 silver badges49 bronze badges

Make sure you set the Build Platform Target to x86 or x64 so that it is compatible with your DLL — which might be compiled for a 32 bit platform.

Specifically:

  • compiled for 32 bit platform (x86)
  • compiled for 64 bit platform (x64 or AMD64 or similar)

Also, as clarified in other answers — your DLL will need to reside in the correct folder on your machine depending on whether the DLL is 32bit or 64bit. (Also make sure any dependencies of the DLL are in the same folder as the DLL)

answered Sep 22, 2014 at 18:49

Grantly's user avatar

GrantlyGrantly

2,5462 gold badges21 silver badges31 bronze badges

I had the same problem when I deployed my application to test PC. The problem was development PC had msvcp110d.dll and msvcr110d.dll but not the test PC.

I added «Visual Studio C++ 11.0 DebugCRT (x86)» merge module in InstalledSheild and it worked. Hope this will be helpful for someone else.

answered Feb 1, 2016 at 11:56

kakopappa's user avatar

kakopappakakopappa

5,0235 gold badges54 silver badges73 bronze badges

1

If the DLL and the .NET projects are in the same solution and you want to compile and run both every time, you can right click the properties of the .NET project, Build events, then add something like the following to Post-build event command line:

copy $(SolutionDir)Debug\MyOwn.dll .

It’s basically a DOS line, and you can tweak based on where your DLL is being built to.

answered Dec 18, 2014 at 15:07

SharpC's user avatar

SharpCSharpC

6,9944 gold badges45 silver badges40 bronze badges

I think your unmanaged library needs a manifest.
Here is how to add it to your binary. and here is why.

In summary, several Redistributable library versions can be installed in your box but only one of them should satisfy your App, and it might not be the default, so you need to tell the system the version your library needs, that’s why the manifest.

Community's user avatar

answered May 27, 2015 at 15:50

Eugenio Miró's user avatar

Eugenio MiróEugenio Miró

2,3982 gold badges28 silver badges38 bronze badges

Setup: 32-bit Windows 7

Context: Installed a PCI-GPIB driver that I was unable to communicate through due to the aforementioned issue.

Short Answer: Reinstall the driver.

Long Answer:
I also used Dependency Walker, which identified several missing dependency modules. Immediately, I thought that it must have been a botched driver installation. I didn’t want to check and restore each missing file.

The fact that I was unable to find the uninstaller under Programs and Features of the Control Panel is another indicator of bad installation. I had to manually delete a couple of *.dll in \system32 and registry keys to allow for driver re-installation.

Issue fixed.

The unexpected part was that not all dependency modules were resolved. Nevertheless, the *.dll of interest can now be referenced.

answered Oct 20, 2016 at 16:15

icernos's user avatar

icernosicernos

3953 silver badges6 bronze badges

I have come across the same problem, In my case I had two 32 bit pcs.
One with .NET4.5 installed and other one was fresh PC.

my 32-bit cpp dll(Release mode build) was working fine with .NET installed PC but Not with fresh PC where I got the below error

Unable to load DLL ‘PrinterSettings.dll’: The specified module could not be
found. (Exception from HRESULT: 0x8007007E)

finally,

I just built my project in Debug mode configuration and this time my
cpp dll was working fine.

answered Jan 25, 2018 at 7:58

Abu Muhammad's user avatar

0

Also faced the same problem when using unmanaged c/c++ dll file in c# environment.

1.Checked the compatibility of dll with 32bit or 64bit CPU.

2.Checked the correct paths of DLL .bin folder, system32/sysWOW64 , or given path.

3.Checked if PDB(Programme Database) files are missing.This video gives you ans best
undestand about pdb files.

When running 32-bit C/C++ binary code in 64bit system, could arise this because of platform incompatibility. You can change it from Build>Configuration manager.

answered Jan 17, 2019 at 4:41

Yuresh Karunanayake's user avatar

I faced the same problem when import C++ Dll in .Net Framework +4, I unchecked Project->Properties->Build->Prefer 32-bit and it solved for me.

answered Mar 24, 2020 at 17:14

Mamo Ghandi's user avatar

Mamo GhandiMamo Ghandi

772 silver badges10 bronze badges

I got this error for one C++ project in our solution, and only on our buildmaster’s machine. The rest of us could build it with no problem.

In our case it was because that particular project had <WindowsTargetPlatformVersion> in the .vcxproj file set to «10.0» vs. «10.0.18362.0» as in all our other C++ projects.

Not specifying the entire SDK version number seems to have allowed MSBuild to choose the newest(?) SDK and associated build tools.

Our buildmaster likely had the remnants of a newer SDK on his machine, and MSBuild was trying to use it (and thus RC.exe was not found).

In any case, bringing up the project’s property page and changing Configuration Properties > General > Windows SDK Version to «10.0.18362.0» (or whichever specific version of the SDK you have installed) for all of the project’s configurations/platforms did the trick.

answered Aug 14, 2021 at 1:32

Scott Smith's user avatar

Scott SmithScott Smith

3,9102 gold badges31 silver badges64 bronze badges

It has nothing to do with dependencies if you checked all dependencies and you know you got them all, it has nothing to do with the file being in the wrong directory either or incorrect ARGUMENTS passed to dll, the DLL Fails to load using LoadLibrary itself.. you could check the address returned from LoadLibrary is always 0x0000000 (not loaded).

I couldn’t figure this error out either it worked fine on Windows 7, but on Windows 10 it doesn’t work. I fixed the problem though it had nothing to do with missing dependencies or Runtime redistributable packs.

The problem was I had to pack the DLL with upx and it started working again.

Something with the file being unpacked and compiled on old Windows XP operating system created a bad PE Header or Bad file format or something, but packing it with UPX did the trick works fine now and the DLL got 3x smaller haha.

answered Jul 4, 2021 at 22:43

SSpoke's user avatar

SSpokeSSpoke

5,65610 gold badges73 silver badges124 bronze badges

Если вы получили код ошибки 0x8007007E на компьютере Windows 10/8/7, то вы ищете решение, и вы попали в нужное место. Код ошибки 0x8007007E может появиться в следующих трех сценариях, и в этом посте предлагаются некоторые рекомендации, которые могут помочь вам решить вашу проблему:

  1. Запуск Центра обновления Windows
  2. Отправить/получить в Outlook
  3. Подключение к принтеру.

Содержание

  1. Код ошибки 0x8007007E
  2. Ошибка Центра обновления Windows 0x8007007E
  3. Ошибка 0x8007007E в Outlook
  4. Ошибка 0x8007007E в принтере

Код ошибки 0x8007007E

Давайте посмотрим на возможные исправления для трех разных сценариев.

Ошибка Центра обновления Windows 0x8007007E

Windows 10 Update Error Code 0x8007007E возникает, когда обновления не синхронизированы. Это происходит как для автономных компьютеров с Windows 10, так и при подключении к Enterprise. Windows Server управляет обновлениями на всех компьютерах в сети предприятия.

Microsoft указывает, что, когда исправление не установлено перед синхронизацией, это происходит.

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

Чтобы это исправить, нам нужно восстановить службы Windows Server Update Services. Для предприятия, если у вас есть несколько серверов WSUS, вам нужно повторить то же самое на каждом сервере. Вы также можете запустить его только на тех серверах, которые синхронизировали метаданные перед установкой исправления. IT Pro может проверить журнал WSUS с помощью консоли администратора WSUS или API. Это может помочь им выяснить, есть ли статус синхронизации метаданных.

1] Удалить содержимое папки распространения программного обеспечения вручную

Windows загрузит все файлы обновлений в эту папку. Он действует как буфер перед установкой на компьютер с Windows 10. Обязательно удалите содержимое папки распространения программного обеспечения (C: \ Windows \ SoftwareDistribution \ DataStore) вручную. Вам придется остановить службы Центра обновления Windows, прежде чем удалять эти файлы. После этого перезапустите службу Windows Update.

Это относится как к автономным компьютерам, так и к корпоративным компьютерам.

2] Запустите средство устранения неполадок Центра обновления Windows .

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

Как только компьютер синхронизируется с сервером обновлений (Microsoft Update Server или Enterprise Server), все необходимые обновления будут установлены в первую очередь. Остальные обновления будут опубликованы позже.

Ошибка 0x8007007E в Outlook

Когда эта ошибка появляется в клиенте Microsoft Outlook, она запрещает пользователю отправлять или получать любые электронные письма. Обычно это происходит по двум причинам – [1], когда конечный пользователь пытается перейти на Windows 10 и [2], если пользователь обновляется до следующей версии Office. Есть два способа решить эту проблему:

1] Восстановить/переустановить клиент Office Outlook:

Если восстановление Microsoft Outlook не помогает, вы можете установить почтовый клиент снова. Иногда обновление портит конфигурацию при изменении версии, и переустановка исправит это.

2] Запустите Outlook от имени администратора.

Найдите Outlook в меню программы, затем нажмите Shift + правой кнопкой мыши и выберите «Запуск от имени администратора».

Ошибка 0x8007007E в принтере

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

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

Однако, если это 64-битный клиент, ему потребуется 64-битная версия драйвера. Но так как сервер предлагает 32-разрядную версию драйвера (из-за записи в реестре), это приводит к этой ошибке. Запись реестра на сервере находится по адресу:

HKLM \ SYSTEM \ CurrentControlSet \ Control \ Print \ Printers \\ CopyFiles \ биди.

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

Сообщите нам, помогло ли это исправить ошибку 0x8007007E на вашем компьютере.

У меня есть библиотека dll с неуправляемым кодом С++ API, который мне нужно использовать в моем приложении .NET 4.0. Но каждый метод, который я пытаюсь загрузить с моей DLL, я получаю:

Невозможно загрузить DLL ‘MyOwn.dll’: указанный модуль не найден. (Исключение из HRESULT: 0x8007007E)

Я прочитал и попробовал решения severa, которые я нашел в Интернете. Ничего не работает.

Я попытался использовать следующие методы:

[DllImport("MyOwn.dll",  CallingConvention = CallingConvention.Cdecl)]
[return: MarshalAs((UnmanagedType.I4))]
public static extern Int32 MyProIni(string DBname, string DBuser_pass,
    string WorkDirectory, ref StringBuilder ErrorMessage);

Когда я попытался выполнить эту статью, и когда я запускаю этот пример (из загруженного кода), он запускается без проблем (используемая dll находится в bin/debug папка)

Я скопировал свою dll (вместе со всеми файлами в зависимости от моей папки bin).

Я также пробовал этот подход, но получил ту же ошибку:

[DllImportAttribute(MyOwnLibDllPath, EntryPoint="TMproIni")]
[return: MarshalAs(UnmanagedType.I4)]
public static extern  int MyproIni(string DBname, string DBuser_pass, 
    string WorkDirectory, ref StringBuilder ErrorMessage);

Любые предложения?

Поделиться

Источник

15 ответов

Из того, что я помню в Windows, порядок поиска для dll:

  • Текущий каталог
  • Системная папка, C:\windows\system32 or c:\windows\SysWOW64 (для 32-разрядного процесса в 64-битной ячейке).
  • Чтение из переменной среды Path

Кроме того, я бы проверял зависимости DLL, хост зависимостей, предоставляемый Visual Studio, может помочь вам здесь, он также может быть загружен бесплатно: http://www.dependencywalker.com

display101

Поделиться

Вы можете использовать инструмент dumpbin для поиска необходимых зависимостей DLL:

dumpbin /DEPENDENTS my.dll

Это расскажет вам, какие DLL файлы должны загружать DLL. Особенно обратите внимание на MSVCR *.dll. Я видел, что ваш код ошибки возникает, когда не установлен Redistributable Visual С++.

Вы можете получить «Распространяемые пакеты Visual С++ для Visual Studio 2013» с веб-сайта Microsoft. Он устанавливает c:\windows\system32\MSVCR120.dll

В имени файла 120 = 12.0 = Visual Studio 2013.

Будьте осторожны, чтобы у вас была правильная версия Visual Studio (10.0 = VS 10, 11 = VS 2012, 12.0 = VS 2013…), правильная архитектура (x64 или x86) для вашей целевой платформы DLL, а также вам нужно будьте осторожны в сборке отладки. Отладочная сборка DLL зависит от MSVCR120d.dll, которая является отладочной версией библиотеки, которая устанавливается с помощью Visual Studio, но не с помощью распространяемого пакета.

Anthony Hayward

Поделиться

DLL должна находиться в папке bin.

В Visual Studio я добавляю dll в свой проект (НЕ в ссылках, но «Добавить существующий файл» ). Затем установите для свойства «Копировать в выходной каталог» для dll значение «Копировать, если новое».

Jeremy Thompson

Поделиться

Попробуйте ввести полный путь к dll.
Если это не сработает, попробуйте скопировать dll в папку system32.

Headpuster

Поделиться

Есть одна очень забавная вещь (и имеет техническую значимость), которая может растратить ваши часы, поэтому подумал о том, чтобы поделиться ею здесь —

Я создал проект консольного приложения ConsoleApplication1 и проект библиотеки классов ClassLibrary1.

Весь код, который делал p/invoke, присутствовал в ClassLibrary1.dll. Поэтому перед отладкой приложения из visual studio я просто скопировал неуправляемую сборку С++ (myUnmanagedFunctions.dll) в каталог \bin\debug\ проекта ClassLibrary1, чтобы он мог быть загружен в среду выполнения CLR.

Я продолжал получать

Невозможно загрузить DLL

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

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

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

RBT

Поделиться

Убедитесь, что все зависимости вашей собственной DLL находятся рядом с dll или в System32.

Felice Pollano

Поделиться

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

[DllImport(@"C:\\mycompany\\MyDLL.dll")]

Сказав это; в моем случае с запуском dumpbin /DEPENDENTS, как было предложено @anthony-hayward, и копирование через 32-разрядных версий DLL, перечисленных там в моем рабочем каталоге, решило эту проблему для меня.

Сообщение просто немного вводит в заблуждение, потому что это не «моя» DLL, которая не может быть загружена — это зависимости

Black

Поделиться

У меня была такая же проблема, когда я развернул свое приложение для тестирования ПК. Проблема заключалась в разработке ПК с msvcp110d.dll и msvcr110d.dll, но не на тестовом ПК.

Я добавил «Слиточный модуль Visual Studio С++ 11.0 DebugCRT (x86)» в InstalledSheild, и он сработал. Надеюсь, это будет полезно для кого-то другого.

kakopappa

Поделиться

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

copy $(SolutionDir)Debug\MyOwn.dll .

В основном это строка DOS, и вы можете настроить ее на основе того, где строится ваша DLL.

SharpC

Поделиться

Убедитесь, что вы устанавливаете платформу Build Platform Target на x86 или x64, чтобы она была совместима с вашей DLL, которая может быть скомпилирована для 32-битной платформы.

Grantly

Поделиться

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

Chris O

Поделиться

Я столкнулся с той же проблемой, в моем случае у меня было два 32-битных ПК. Один с установленным .NET4.5, а другой был свежим ПК.

Мой 32-битный cpp dll (Release mode build) работал нормально с установленным ПК .NET, но не со свежим ПК, где я получил следующую ошибку

Невозможно загрузить DLL «PrinterSettings.dll»: указанный модуль не найден. (Исключение из HRESULT: 0x8007007E)

в конце концов,

Я только что построил свой проект в конфигурации режима отладки, и на этот раз мой cpp dll работал нормально.

Abu Muhammad

Поделиться

Настройка: 32-разрядная версия Windows 7

Контекст: установлен драйвер PCI-GPIB, с которым я не смог связаться из-за вышеупомянутой проблемы.

Короткий ответ: переустановите драйвер.

Длительный ответ:
Я также использовал Dependency Walker, в котором было указано несколько отсутствующих модулей зависимостей. Сразу же я подумал, что это была неудачная установка драйвера. Я не хотел проверять и восстанавливать каждый отсутствующий файл.

Тот факт, что я не смог найти деинсталлятор в разделе «Программы и функции панели управления», является еще одним показателем плохой установки. Мне пришлось вручную удалить пару *.dll в \system32 и ключи реестра, чтобы разрешить повторную установку драйвера.

Исправлена ​​проблема.

Неожиданная часть заключалась в том, что не все модули зависимостей были разрешены. Тем не менее, теперь можно указать *.dll интерес.

icernos

Поделиться

Также столкнулся с той же проблемой при использовании неуправляемого файла dll c/c++ в среде С#.

1.Проверил совместимость dll с 32-битным или 64-битным процессором.

2.Проверены правильные пути к папке DLL.bin, system32/sysWOW64 или указанному пути.

3.Проверено, отсутствуют ли файлы PDB (база данных программ). Это видео дает вам лучшее представление о файлах pdb.

При запуске 32-битного двоичного кода C/c++ в 64-битной системе это может произойти из-за несовместимости платформы. Вы можете изменить его из Build> Configuration manager.

Yuresh Karunanayake

Поделиться

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

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

Eugenio Miró

Поделиться

Ещё вопросы

  • 0Разделить слова со связанным списком в C ++
  • 0как обновить статус комнаты после вставки с помощью php
  • 0JSON @attributes Использование ионных или AngularJS
  • 0Сделайте, чтобы переменная PHP была распознана
  • 0Как инициализировать переменные $ scope контроллера в angularJS
  • 0Попытка заставить curl работать в c ++ linux и GDB
  • 0Codeigniter: правильный способ доступа к функции в пользовательской библиотеке
  • 1Позвоните классу через минуту после инициализации Eclipse
  • 0не понимаю, как использовать jQuery $ .each для итерации этого JSON
  • 1Объекты — Что я делаю не так?
  • 0Как использовать React JSX внутри угловой директивы
  • 1Установить Enum Array на основе другого массива Enum в той же модели — Mongoose
  • 0получение данных JSON со страницы php
  • 0Отправка сообщения пользователю с помощью Facebook Graph API
  • 1Как динамически получать изображения подушек в Tkinter
  • 1Fluent Builder / DSL в Java на примере
  • 1MOXy XmlNameTransformer для нескольких пакетов
  • 1Сеанс ASP.NET 2.0 неожиданно завершается
  • 1Java — глюк экрана LWJGL
  • 0Как перепривязать сетку Telerik MVC с динамическим именем
  • 0Оператор перегрузки >>
  • 1Как установить значение месяца на основе количества
  • 0показать загруженное изображение, прежде чем нажать на кнопку отправить
  • 0Как переключать строки в угловых, чтобы развернуть или свернуть ряд, как в аккордеоне?
  • 1Кодированный пользовательский интерфейс UITestControlCollection в массив
  • 1Получить все возможные строки в печатном ASCII
  • 1Spring @Cacheable метод с нумерацией страниц
  • 0Безопасные ссылки при использовании пользовательского интерфейса маршрутизатора Angular Js
  • 0Как изменить значения из CSV в SQL с помощью switch-case
  • 0Обработчик событий Jquery не работает при вызове со страницы
  • 1Java org / objectweb / asm / ClassVisitor не найден
  • 1Массив NP имеет форму (2186, 128). Я заинтересован в применении полученного массива к SVM
  • 1Не удается позвонить из Android WebView
  • 1Как создать Android-виджет, используя реагировать родной?
  • 1JSF Hibernate Критерии API
  • 1Удаление смежных дубликатов в ArrayList [Java]
  • 0Qt — Приложение Quick 2 из нового проекта (файл main.qml не найден)
  • 1«Заставить эмулятор Android работать быстрее» объяснение ответа
  • 0jQuery .on (), .live () и .click () работают только один раз
  • 1Запустите скрипт на удаленном компьютере без преобладания sudo
  • 1ошибка: [Dagger / MissingBinding] при попытке построения проекта
  • 1Проблема прозрачности с opengl / lwjgl
  • 1Проблема с D3.JS и Flask — попытка получить карту США
  • 0Как хранить данные структуры в массиве в C ++?
  • 1Javascript дает недействительный месяц, когда месяц установлен на 5
  • 1короткие клавиши для меню не работает в wpf в призме
  • 1ffmpeg не работает с именем файла, есть пробел
  • 0шаблон angularjs (из ng-repeat) и пользовательская директива для того же вопроса элемента

Сообщество Overcoder

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

Ошибка 0x8007007e в Windows 10: 3 лучших способа решения

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

Что же может быть причиной появления на экране сообщения подобного рода. Среди всех возможных причин выделяют две главные:

  1. По каким-либо причинам был поврежден один из файлов Виндовс либо отчет памяти реестра, именно вследствие этого может происходить несоответствие файлов друг с другом или с устанавливаемым файлом, который, по каким-либо причинам, не может подходить установленной ОС, так как предназначен совсем для других характеристик.
  2. Дополнительное, вспомогательное программное обеспечение, которое очень часто может вызывать ошибки, сбои во время работы устройства либо загрузки. Очень часто виной всему выступают антивирусные программы, автоматически останавливающие сам процесс загрузки файла, делается это все в целях безопасности и надежности. Для того, чтобы выйти из сложившейся ситуации вопрос может решаться несколькими способами. Рассмотрим наиболее актуальные из всех возможных.
  1. Одним из самых простых способов устранения ошибки является простое отключение установленной антивирусной программы либо других приложений, вызывающих подвис либо неправильную загрузку файлов. После отключения программы следует удостовериться в том, что метод действительно оказался действенным. Это будет сразу заметно по работе самой ОС. Для того, чтобы отключить расширение необходимо кликнуть на соответствующую иконку, открыть меню опции и найти кнопку Выйти. После чего рекомендуется начать заново обновление системы или установку желаемой программы, сервиса. Если результата никакого не последовало, следует, что причина крылась не в этом и пробовать проверять второй способ.
  2. Необходимо самому вернуть настройки Центра обновлений к дефолтному виду. В тот момент, когда антивирус, установленный в гаджет не источник возникновения ошибки 0x8007007e, то необходимо возвратиться в начальному виду и попробовать установить, переключить различные настройки Центра обновления. Высока вероятность того, что, используя другие настройки, получиться исправить сложившуюся ситуацию. Для реализации данного способа необходима кликнуть WIN-X и найти раздел Командная строка, после чего включить опцию net stop wuauserv, установить параметр net stop cryptSvc, самостоятельно в командной строке ввести комбинацию net stop bits и нажать Ввод. При этом следует обозначить тип настройки net stop msiserver, после чего опять нажать клавишу Ввод. Записывается опция с раздела ren C:WindowsSoftwareDistribution SoftwareDistribution.old, указывается параметр ren C:WindowsSystem32catroot2 Catroot2.old, набирается net start wuauserv и все эти действия подтверждаются простым нажатием на клавишу Enter. Не забудьте выключить консоль. После всех выполненных мероприятий, указанных выше, стоит опять выполнить апдейт операционной системы либо расшифровать какую-либо модификацию. Если применение и данного метода не помогло справиться с насущной проблемой, то самое время испробовать заключительный метод.
  3. Данный способ можно обозначить, как чистая загрузка. Применять его следует только в тех случаях, когда вышеуказанные способы не привели ни к какому результату. Данный способ загрузки всей информации в автоматическом режиме запускает саму операционную систему со всеми ее основными и ключевыми составляющими, грубо говоря, все дополнительные и вспомогательные программы, которые хоть как-то могут повлиять на загрузку либо модификацию, отключаются, в процессе участвуют только самые нужные сервисы.

Для того, чтобы перейти к данному процессу необходимо нажать комбинацию WIN-R, в выскочившем окне вводится команда msconfig, после чего действие подтверждается.

Далее необходимо найти раздел Службы, галочкой отметить пункт Скрыть службы Майкрософт, после чего нажать Отключить все. Теперь можно смело переходить к установке, так как все ненужные и дополнительные программы отключаются.

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

Получить ошибку 0x8007007e вы можете при обновлении до Windows 10, либо же во время установки какого-то обновления для операционной системы Windows. Вместе с ошибкой может быть также приложено сообщение, в котором говориться, что Windows столкнулась с неизвестной ей ошибкой, или же что установка обновления/билда закончилась неудачно.

Что же могло вызвать появление ошибки 0x8007007e? Обычно, выделяют две причины:

  • Стороннее программное обеспечение, которое может помешать процессу обновления. Особенно довольно часто в этом виновато стороннее антивирусное ПО, которое, по каким бы то ни было причинам, блокирует процесс установки обновления.
  • Повреждение файловой системы Windows или записей Реестра, из-за чего и создается конфликт с устанавливаемым обновлением.

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

Как исправить ошибку 0x8007007e при обновлении до Windows 10?

0x8007007e

Метод №1 Отключить стороннее Антивирусное программное обеспечение

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

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

Метод №2 Вручную сбросить компоненты Центра обновления

В том случае, если ваш Антивирус не является виновником ошибки 0x8007007e, то можно попробовать сбросить различные компоненты Центра обновления Windows. Для этого сделайте следующее:

  • Нажмите комбинацию клавиш Win+X и выберите из контекстного меню пункт “Командная строка(администратор)”.
  • Впишите команду net stop wuauserv и нажмите Enter.
  • Впишите команду net stop cryptSvc и нажмите Enter.
  • Впишите команду net stop bits и нажмите Enter.
  • Впишите команду net stop msiserver и нажмите Enter.
  • Впишите команду ren C:WindowsSoftwareDistribution SoftwareDistribution.old и нажмите Enter.
  • Впишите команду ren C:WindowsSystem32catroot2 Catroot2.old и нажмите Enter.
  • Впишите команду net start wuauserv и нажмите Enter.
  • Впишите команду net start cryptSvc и нажмите Enter.
  • Впишите команду net start bits и нажмите Enter.
  • Впишите команду net start msiserver и нажмите Enter.
  • Закройте Командную строку.

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

Метод №3 Чистая загрузка

Что же, если все предыдущие методы не смогли решить проблему с ошибкой 0x8007007e, то можно попробовать выполнить Чистую загрузку. Этот метод загрузки позволит запустить вашу систему только с самыми необходимыми компонентами для ее работы, т.е. стороннее программное обеспечение будет полностью отключено. Для выполнения Чистой загрузки выполните следующие шаги:

  • Нажмите комбинацию клавиш Win+Rчтобы открыть окошко “Выполнить”.
  • Впишите в строку msconfig и нажмите Enter.
  • Переключитесь на вкладку “Службы”.
  • Поставьте галочку напротив опции “Скрыть все службы от Microsoft”.
  • Как только вы скроете все важные службы, нажмите кнопку “Отключить все”. Таким образом вы выключите все сторонние и ненужные для запуска операционной системы службы.
  • Далее зайдите в Диспетчер задач.
  • Перейдите во вкладку Автозагрузка и отключите все приложения, которые будут там находиться.
  • Перезагрузите ваш компьютер.

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

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

На чтение 2 мин. Просмотров 3.1k. Опубликовано 03.09.2019

Ошибка 0x8007007e обычно возникает при попытке загрузить обновления Windows. Это может быть большой проблемой и сделать вашу систему уязвимой и устаревшей, поэтому сегодня мы собираемся показать вам, как это исправить раз и навсегда.

Как исправить ошибку 0x8007007e в Windows 10? Эта ошибка обычно возникает, если возникают какие-либо проблемы со службами Центра обновления Windows. Чтобы это исправить, вам нужно запустить командную строку и перезапустить эти службы. Если это не работает, попробуйте отключить все службы запуска и приложения или временно отключить антивирусную защиту.

Содержание

  1. Как исправить ошибку 0x8007007e Windows Update?
  2. 1. Перезапустите компоненты Центра обновления Windows.
  3. 2. Выполните Чистую загрузку
  4. 3. Отключить сторонний антивирус

Как исправить ошибку 0x8007007e Windows Update?

  1. Перезапустите компоненты Центра обновления Windows .
  2. Выполнить чистую загрузку
  3. Отключить сторонний антивирус

1. Перезапустите компоненты Центра обновления Windows.

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

  1. Сначала нажмите клавишу Windows и удерживайте клавишу X . Нажмите Командная строка (Администратор) .
  2. Выполните следующие команды одну за другой:

    • net stop wuauserv
    • net stop cryptSvc
    • чистые стоповые биты
    • net stop msiserve
    •   C:  Windows  SoftwareDistribution SoftwareDistribution.ol  
    •   C:  Windows  System32  catroot2 Catroot2.old  
    • net start wuauserv
    • net start cryptSvc
    • чистые стартовые биты
    • net start msiserver
  3. Наконец, закройте командную строку.

2. Выполните Чистую загрузку

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

  1. Сначала нажмите клавишу Windows и клавишу R .
  2. Теперь введите msconfig и нажмите Enter .
  3. Затем перейдите на вкладку “Услуги” .
  4. Установите флажок Скрыть все службы Microsoft и нажмите Отключить все .
  5. Теперь перейдите на вкладку “Автозагрузка” и нажмите Открыть диспетчер задач .
  6. Отключить все задачи в диспетчере задач.

Перезагрузите компьютер и проверьте, сохраняется ли проблема.

3. Отключить сторонний антивирус

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

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

Вот вам три простых решения. Обязательно попробуйте все эти решения и сообщите нам, помогли ли они вам исправить ошибку обновления Windows 0x8007007e.

0x8007007e ошибка принтера является основной проблемой, с которой сталкиваются пользователи Windows 10 уже с 2019 года. Она мешает людям печатать документы и другие файлы, говоря что в работе принтера возникла проблема и он не может завершить работу. Фактически, эта проблема представляет большую трудность для многих людей, которые привыкли печатать много бумаги для каких-либо целей. Существует множество причин, которые могут вызывать ошибку 0x8007007e, например, неправильная конфигурация ПО для печати, вредоносное ПО, ошибочные обновления и другие возможные причины. Нам удалось найти и протестировать наиболее эффективные способы борьбы с этой проблемой и вернуть ваш принтер в нормальное состояние.

0x8007007e printer error

0x8007007e ошибка принтера

0x8007007e printer error (german)

0x8007007e ошибка принтера (немецкий)

1. Установите / скачайте свежие обновления

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

  1. Щелкните левой кнопкой мыши на Меню Пуск в нижнем левом углу экрана и выберите Настройки. Или используйте Windows Key + I сочетания клавиш.
  2. Затем выберите Обновление и безопасность.
  3. На левой панели выберите Центр обновления Windows.
  4. Теперь нажмите Проверка наличия обновлений.
  5. Подождите, пока Windows просканирует обновления и установит их, если они будут найдены.
  6. После завершения перезагрузите компьютер и проверьте, сохраняется ли проблема.

Чтобы удалить последние обновления:

  1. Вернитесь в Центр обновления Windows меню.
  2. Найдите и нажмите на Просмотр журнала обновлений , а затем Удалить обновления.
  3. Появится новое окно со списком установленных обновлений.
  4. Выберите обновление по последней дате, щелкните на него правой кнопкой мыши и выберите Удалить.
  5. Перезагрузите компьютер и посмотрите, помогло ли это решить проблему.

2. Обновите драйверы принтера.

Еще одно потенциальное решение, которое может устранить проблему, — это проверка актуальности драйверов принтера. Иногда драйверы могут быть устаревшими и больше не поддерживаться, поэтому рекомендуется обновлять их по мере развития технологий.

  1. Щелкните левой кнопкой мыши на Меню Пуск и выберите Диспетчер устройств.
  2. Найдите Принтер устройство и разверните окно. Щелкните правой кнопкой мыши на каждый адаптер и выберите Обновить драйвер. Иногда неисправные драйверы помечаются желтым треугольником.
  3. Позвольте Windows найти новые драйверы и загрузить их, следуя инструкциям на экране.

Driver Booster start screen

Стартовый экран Driver Booster

Driver Booster scan results

Результаты сканирования Driver Booster

Driver Booster tools section

Раздел инструментов Driver Booster

Драйверы очень важны для правильной реализации любого процесса на вашем компьютере. Они обеспечивают стабильность и поддержание системы в пользу лучшей производительности. Драйверы принтера отвечают за стабильность и безошибочную работу печатающих устройств. Здесь вы можете скачать лучшую утилиту для обновления драйверов — Driver Booster от IObit:

Скачать Driver Booster

3. Найдите и переместите PrintConfig.dll в его исходную папку.

Эксперты обнаружили, что PrintConfig.dll, отвечающий за правильную работу печати, может быть вне своей родной папки. По неизвестным причинам он находится не в том месте, где должен быть. Таким образом, мы его найдем и скопируем обратно в нужное место:

  1. Нажмите Windows + R сочетания клавиш.
  2. В открывшемся окне введите spool и нажмите Enter.
  3. Затем перейдите во вкладку Drivers папку и напишите printconfig.dll в строке поиска вверху справа.
  4. После этого щелкните правой кнопкой мыши на printconfig.dll , а затем выберите Копировать.
  5. Теперь вернитесь в Drivers папку и найдите папку под названием 3.
  6. Вставьте printconfig.dll в нее и перезагрузите компьютер, чтобы решить проблему.

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

4. Сканирование на наличие вредоносных программ.

Мы продолжаем повторять, что вредоносное программное обеспечение всегда было причиной многих проблем. Начиная с потенциально нежелательных программ и заканчивая более ужасными примерами, такими как программы-вымогатели или трояны. Даже вредоносные расширения, установленные в вашем браузере, могут изменить определенные настройки и привести к проблемам с принтером. Поэтому мы советуем вам запустить полную проверку вашей системы. Вы можете сделать это либо с помощью встроенного антивируса от Microsoft, либо с помощью сторонних утилит, таких как Norton Antivirus или Spyhunter 5. Они просты в установке и не занимают много места на вашем диске. Кроме того, вам не нужно платить за полную активацию, потому что она предлагает бесплатное одноразовое удаление. Вот ссылки для их загрузки.

Скачать антивирус Нортон

5. Выполните сканирование с помощью средства проверки системных файлов (SFC).

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

  1. Откройте Командная строка как мы делали в описанном выше методе.
  2. После этого введите sfc /scannow команду и нажмите Enter.
  3. Когда процесс исправления будет завершен, перезагрузите компьютер и проверьте, устранило ли это проблему.

6. Восстановите службы Диспетчера печати.

Последний, но не менее важный метод, который может помочь в решении ошибки 0x8007007e, — это откат служб принтера к конфигурации по умолчанию. Официальное руководство Windows предлагает сделать это в соответствии со следующими шагами:

  1. Введите и откройте services в строке поиска рядом с Меню Пуск.
  2. Выберите Стандартный вкладку, а затем дважды нажмите на Диспетчер печати в списке служб.
  3. Нажмите Stop, а затем OK.
  4. Теперь введите и откройте %WINDIR%system32spoolPRINTERS в строке поиска и удалите все файлы внутри нее.
  5. Вернитесь в Услуги и дважды щелкните по Диспетчер печати снова.
  6. Выберите Начать, наведите на Автоматически в Тип запуска поле, а затем нажмите OK.

Заключение

Вот собственно и все. 6 шагов, которые помогут в решении ошибки принтера 0x8007007e. Если у вас возникают проблемы с печатью даже после выполнения описанных выше шагов, мы рекомендуем повторно подключить или восстановить настройки самого принтера. Дополнительную информацию о том, как это сделать, можно найти в Интернете.

Если вы получили код ошибки 0x8007007E на компьютере Windows 10/8/7, то вы ищете решение, и вы попали в нужное место. Код ошибки 0x8007007E может появиться в следующих трех сценариях, и в этом посте предлагаются некоторые рекомендации, которые могут помочь вам решить вашу проблему:

  1. Запуск Центра обновления Windows
  2. Отправить/получить в Outlook
  3. Подключение к принтеру.

Содержание

  1. Код ошибки 0x8007007E
  2. Ошибка Центра обновления Windows 0x8007007E
  3. Ошибка 0x8007007E в Outlook
  4. Ошибка 0x8007007E в принтере

Код ошибки 0x8007007E

Давайте посмотрим на возможные исправления для трех разных сценариев.

Ошибка Центра обновления Windows 0x8007007E

Windows 10 Update Error Code 0x8007007E возникает, когда обновления не синхронизированы. Это происходит как для автономных компьютеров с Windows 10, так и при подключении к Enterprise. Windows Server управляет обновлениями на всех компьютерах в сети предприятия.

Microsoft указывает, что, когда исправление не установлено перед синхронизацией, это происходит.

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

Чтобы это исправить, нам нужно восстановить службы Windows Server Update Services. Для предприятия, если у вас есть несколько серверов WSUS, вам нужно повторить то же самое на каждом сервере. Вы также можете запустить его только на тех серверах, которые синхронизировали метаданные перед установкой исправления. IT Pro может проверить журнал WSUS с помощью консоли администратора WSUS или API. Это может помочь им выяснить, есть ли статус синхронизации метаданных.

1] Удалить содержимое папки распространения программного обеспечения вручную

Windows загрузит все файлы обновлений в эту папку. Он действует как буфер перед установкой на компьютер с Windows 10. Обязательно удалите содержимое папки распространения программного обеспечения (C: Windows SoftwareDistribution DataStore) вручную. Вам придется остановить службы Центра обновления Windows, прежде чем удалять эти файлы. После этого перезапустите службу Windows Update.

Это относится как к автономным компьютерам, так и к корпоративным компьютерам.

2] Запустите средство устранения неполадок Центра обновления Windows .

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

Как только компьютер синхронизируется с сервером обновлений (Microsoft Update Server или Enterprise Server), все необходимые обновления будут установлены в первую очередь. Остальные обновления будут опубликованы позже.

Ошибка 0x8007007E в Outlook

Когда эта ошибка появляется в клиенте Microsoft Outlook, она запрещает пользователю отправлять или получать любые электронные письма. Обычно это происходит по двум причинам – [1], когда конечный пользователь пытается перейти на Windows 10 и [2], если пользователь обновляется до следующей версии Office. Есть два способа решить эту проблему:

1] Восстановить/переустановить клиент Office Outlook:

Если восстановление Microsoft Outlook не помогает, вы можете установить почтовый клиент снова. Иногда обновление портит конфигурацию при изменении версии, и переустановка исправит это.

2] Запустите Outlook от имени администратора.

Найдите Outlook в меню программы, затем нажмите Shift + правой кнопкой мыши и выберите «Запуск от имени администратора».

Ошибка 0x8007007E в принтере

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

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

Однако, если это 64-битный клиент, ему потребуется 64-битная версия драйвера. Но так как сервер предлагает 32-разрядную версию драйвера (из-за записи в реестре), это приводит к этой ошибке. Запись реестра на сервере находится по адресу:

HKLM SYSTEM CurrentControlSet Control Print Printers \ CopyFiles биди.

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

Сообщите нам, помогло ли это исправить ошибку 0x8007007E на вашем компьютере.

You can get the 0x8007007e error while upgrading to Windows 10 or performing a Windows update. This error usually prevents you from upgrading or updating your system. Sometimes the error shows up with a “Windows have encountered and unknown error” or “Failed to install the update/build. Please Try again” message as well.

There are usually two things that can cause this issue. The first one is any third party software, especially an antivirus, preventing the update or upgrade. The second is a corrupted windows file or a system file or a registry file.

The issue can be solved by checking what is causing the issue. If a third party software is the reason behind the error then disabling it during the upgrade solves this problem. But if that doesn’t solve the problem then fixing Windows files solves the problem.

First try the method 1 which will most likely solve the issue. If that doesn’t solve the problem then try method 3 to check if a software or service is causing the problem. At the end, try the method 2 which will definitely solve the issue.

Method 1: Disable 3rd party Antivirus

  1. Right click the antivirus icon in the system tray (on the right bottom corner) and select Disable.
  2. If that doesn’t work, double click the antivirus icon. Select the Disable option from the pop up.

Now try to upgrade and see if the issue is still there.

Note: Having an antivirus is important as it protects your computer from threats. Do not forget to enable your antivirus after you are finished upgrading the Windows.

To enable the antivirus, follow these steps

  1. Right click the antivirus icon in the system tray (on the right bottom corner) and select Enable.
  2. If that doesn’t work, double click the antivirus icon. Select the Enable option from the pop up.

Method 2: Manually reset Windows Update Components

In this method we will manually restart the BITS, Cryptographic, MSI Installer and the Windows Update Services and rename the SoftwareDistribution and Catroot2 folders which definitely solves the problem.

  1. Hold Windows Key and press X (release Windows Key). Click Command Prompt (Admin)
  2. Type net stop wuauserv and press Enter
  3. Type net stop cryptSvc and press Enter
  4. Type net stop bits and press Enter
  5. Type net stop msiserver and press Enter
  6. Type ren C:\Windows\SoftwareDistribution SoftwareDistribution.old and press Enter
  7. Type ren C:\Windows\System32\catroot2 Catroot2.old and press Enter
  8. Type net start wuauserv and press Enter
  9. Type net start cryptSvc and press Enter
  10. Type net start bits and press Enter
  11. Type net start msiserver and press Enter
  12. Close the Command Prompt

Sometimes one of the services will start on its own so you don’t have to worry. Now try to upgrade the Windows again and it should work without any problems.

Method 3: Clean Boot

Performing a clean boot will help you identify if the problem is because of the interference of a third party software or a service.

  1. Hold Windows Key and press R (release Windows Key)
  2. Type msconfig and press Enter
  3. Click the Services tab
  4. Check Hide All Microsoft Services and click Disable All (if the button is not greyed out)
  5. Click Startup tab and select Disable All. If there is not disable all option then click the Open Task Manager. Now select each task and click Disable.
  6. Now restart your computer
  7. Check Don’t show this message or launch the System when the System Configuration Utility window appears.

You can also view and read detailed steps to clean boot.

NOTE: Check step 5 before posting. The step 5 wasn’t working for me so I added what I thought might work

Now check if you can download and install the update without any issue.

Photo of Kevin Arrows

Kevin Arrows

Kevin Arrows is a highly experienced and knowledgeable technology specialist with over a decade of industry experience. He holds a Microsoft Certified Technology Specialist (MCTS) certification and has a deep passion for staying up-to-date on the latest tech developments. Kevin has written extensively on a wide range of tech-related topics, showcasing his expertise and knowledge in areas such as software development, cybersecurity, and cloud computing. His contributions to the tech field have been widely recognized and respected by his peers, and he is highly regarded for his ability to explain complex technical concepts in a clear and concise manner.

Понравилась статья? Поделить с друзьями:
  • Ошибка 0x80070079 при копировании на внешний диск
  • Ошибка 0x80070079 превышен таймаут семафора что делать
  • Ошибка 0x80070079 xbox
  • Ошибка 0x80070070 недостаточно места на диске
  • Ошибка 0x80070078 при активации что делать