ログイン直後に sxs dll が見つかりませんか?

ログイン直後に sxs dll が見つかりませんか?

奇妙な問題が発生しています。x86 Visual C++ 2008 ランタイムに依存するアプリケーション (ツールトレイ アイコン exe) は、以前は正常に起動していました。これは、x64 Windows 7 上で発生しています。最近の数回の再起動で、ログイン起動に失敗と表示され、mfc90u.dll が見つからないというポップアップが表示されました。数分後、スタートアップ アイコンからアプリケーションを起動すると、正常に起動し、winsxs フォルダーからランタイム dll が読み込まれていることがわかります。

ログイン直後に winsxs dll が使用できなくなるのはなぜでしょうか?

答え1

Winsxs .dll はアクティブに使用されません。これらはバージョン管理されたバックアップです。以前のバージョンの .dll が何かに必要な場合は、そこから取得されます。.dll が実際に見つからない場合、winsxs の場所はバックアップの場所のように機能するため、適切に機能するにはいくつかのカーネル依存関係を読み込む必要があります。

この問題を解決するには、mfc90u.dll を winsxs から %windir%\system32\ またはプログラムの .exe がある場所にコピーするだけです。

.dll はこれらのディストリビューションの一部であるため、最新バージョンの Microsoft Visual C++ 再頒布可能パッケージを再インストールすると、問題も解決されるはずです。

関連情報