SXS-DLLs wurden nach der Anmeldung nicht direkt gefunden?

SXS-DLLs wurden nach der Anmeldung nicht direkt gefunden?

Ich habe ein seltsames Problem. Eine Anwendung (eine Tooltray-Icon-EXE), die von der x86 Visual C++ 2008-Runtime abhängt, startete früher problemlos. Dies ist auf einem x64 Windows 7 der Fall. Bei den letzten paar Neustarts wurde ein Anmeldestart als fehlgeschlagen gemeldet, mit einem Popup, das besagte, dass mfc90u.dll nicht gefunden wurde. Wenn ich die App einige Minuten später über das Startsymbol starte, wird sie ordnungsgemäß gestartet und ich kann sehen, dass die Runtime-DLLs aus dem WinsXS-Ordner geladen werden.

Was könnte dazu führen, dass WinSXS-DLLs direkt nach der Anmeldung nicht verfügbar sind?

Antwort1

Winsxs-DLLs dürfen nicht aktiv verwendet werden. Es handelt sich um versionierte Backups. Wenn eine frühere Version einer DLL für etwas benötigt wird, wird sie von dort genommen. Wenn die DLL tatsächlich fehlt, fungiert der Winsxs-Speicherort als Backup-Speicherort. Daher müssen mehrere Kernel-Abhängigkeiten geladen werden, damit sie ordnungsgemäß funktionieren.

Um das Problem zu beheben, kopieren Sie einfach die Datei mfc90u.dll von winsxs nach %windir%\system32\ oder an den Speicherort, an dem sich die EXE-Datei des Programms befindet.

Eine Neuinstallation der neuesten Versionen von Microsoft Visual C++ Redistributable sollte das Problem ebenfalls beheben, da die DLL Teil dieser Distributionen ist.

verwandte Informationen