64-битные файлы в System32

724
user6180500

Некоторое время назад я заметил, что некоторые из моих программ перестали работать из-за ошибки 0xc000007b. После небольшого исследования я проследил источник проблемы до двух файлов: msvcr100.dll и msvcp100.dll . 32-битные версии этих файлов переключались (как-то) своими 64-битными версиями в папке System32, что приводило к мгновенному сбою многих программ. Есть ли способ загрузить или получить 32-битные версии этих файлов, чтобы я мог их изменить?

PS: я уже пытался переустановить Visual C ++ 2010 Redistributable (x86 и x64), и это не сработало.

PPS: я узнал о двух файлах, используя зависящий от.exe файл, который не работал. Следует отметить, что программа использовала много библиотек x86, но два вышеупомянутых файла были x64 и находились внутри system32.

-1
Да, просто установить 32-битную версию? Почему вы верите тем, кого они поменяли? Да; ответ на этот вопрос важен. Пожалуйста, предоставьте точную ошибку, вы не уверены, какую ошибку вы получили, что делает поиск решения невозможным Ramhound 7 лет назад 0
Исправил это. Теперь это может быть более конкретным user6180500 7 лет назад 0
Предполагается, что System32 содержит 64-битные библиотеки DLL в 64-битной установке Windows. Установка 32-разрядной версии распространяемого достаточно для запуска 32-разрядных исполняемых файлов, которые ссылаются на 32-разрядные версии Visual C ++ Ramhound 7 лет назад 0
32-битные версии файла будут расположены в SysWoW64, кстати Ramhound 7 лет назад 1

1 ответ на вопрос

2
Overmind

Установите последний распространяемый пакет Microsoft Visual C ++ 2010 x32, а затем x64 после удаления всех предыдущих версий и файлов VC ++, и проблема будет исправлена. .Dll является частью этого распределения.

Если это не сработает, отследите dlls, чтобы увидеть, что они приземляются там, где должны. Используйте regsvr32.exe, чтобы зарегистрировать их вручную (вы можете скачать их отдельно для этой цели здесь ).

Если даже это не работает, и вы не хотите использовать SFC для своей Windows, просто перетащите соответствующую версию (32 или 64) в папку с файлами проблемных приложений .exe.

Вам не нужно регистрировать эти библиотеки. Вы можете просто поместить их в каталог приложения, и по умолчанию Windows одним из последних мест, где Windows будет искать зависимость, является каталог приложения. Эта иерархия расположения файлов хорошо документирована и имела место еще до Windows XP. Ramhound 7 лет назад 0
Да исправить; но их регистрация позволит использовать их в других приложениях по сравнению с методом dir для копирования в определенные приложения. Overmind 7 лет назад 0