Windows 7 - 32-разрядная версия mfc100u.dll в 32- и 64-разрядных каталогах.

1

Я продолжаю получать ту же проблему снова и снова. После установки Windows 7 некоторые программы устанавливают распространяемый Visual Studio 2010 - как x86, так и x64 версии. Все работает некоторое время, а потом я получаю сообщение об ошибке, что программа не может быть запущена. Обычно это Nikon ViewNX 2. Когда я проверяю программу, она говорит, что MFC100U.DLL - версия x86. Поэтому я проверяю, и это действительно один и тот же файл в обоих местах: C: \ Windows \ System32 \ mfc100u.dll C: \ Windows \ SysWOW64 \ mfc100u.dll Оба файла имеют размер x86 и длину 4 422 992 байта. Это отличается от того, что установлено распространяемым x86 - 4368720, поэтому оно должно быть из-за обновления Windows.

Я исправляю это, беря MFC100u.dll (x64 versuib) с другого компьютера и помещая в C: \ Windows \ System32.

Так почему же Microsoft каждый раз присылает мне один и тот же плохой файл? Или что-то еще происходит?

Изменить: Вопрос не является дубликатом из Microsoft Visual C ++ хранилища Если вы читали внимательно , я никогда не говорил , что файл отсутствует . У меня установлены как 64-битные, так и 32-битные версии vc2010, и все работает нормально некоторое время, пока один день после некоторых обновлений (но я не уверен, что обновления вызывают его), некоторые программы перестают работать. Я проверяю их с помощью зависимого устройства, и он говорит, что файл MFC100u.dll в Windows / System32 на самом деле 32-битный, в то время как он должен быть 64-битным . Поэтому, когда это происходит, и system32, и SysWOW64 имеют один и тот же файл - одинакового размера, оба 32-битные. И да, я проверяю это с помощью 64-битной программы, чтобы убедиться, что windows / system32 не перенаправлен на 32-битную версию.

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

NickSoft
источник
Файл, расположенный в System32 в 64-разрядной версии Windows, не является 32-разрядным, он будет 64-разрядным. «Так почему же Microsoft каждый раз присылает мне один и тот же плохой файл?» - существует несколько версий Visual C++ redistributable 2010приложения, которые могут предназначаться для конкретной версии DLL. Вы можете установить несколько версий Visual C++ redistributable 2010. Они исправили эту конкретную проблему с Visual C++ redistributable 2015+. Если программа не может быть запущена, значит, правильная версия не установлена.
Ramhound
Как я уже говорил, файл в system32 на моей 64-битной ОС был 32-битным - я проверил это. Это было на самом деле проблема. Через некоторое время 64-битный файл заменяется 32-битным, и программы, которые требуют его, перестают работать.
NickSoft
Я скачал соответствующее приложение на виртуальной машине и установил как 32-битную, так и 64-битную Visual C ++ 2010. Приложение отлично работает. Мне не удалось воспроизвести это поведение
Ramhound
Ну, я не могу дать вам точные шаги для воспроизведения. Я не установил ни один из VC dist. пакеты вручную - только те, которые связаны с другим программным обеспечением. После того, как я устанавливаю Windows, я обновляю, затем я устанавливаю все мое программное обеспечение, и затем позже (в прошлый раз ~ 1 месяц) проблема возникает. Я говорю, что это может быть проблема обновления Windows, потому что все в порядке, затем я обновляюсь, а на другой день это не работает, но я не могу воспроизвести это специально. Таким образом, это может быть не обновление Windows. Однако библиотеки теперь имеют другой размер, чем когда они впервые установлены. Могу ли я следить за тем, что пишут эти DLL
NickSoft