dlls sxs não encontradas logo após o login?

dlls sxs não encontradas logo após o login?

Estou encontrando um problema estranho. Um aplicativo (um exe de ícone da bandeja de ferramentas) que depende do tempo de execução x86 do Visual C++ 2008 usado para iniciar bem. Isso está em um Windows 7 x64. Nas reinicializações recentes, ele declarou falha na inicialização do login, com um pop-up dizendo que mfc90u.dll não foi encontrado. Alguns minutos depois, se eu iniciar o aplicativo a partir do ícone de inicialização, ele será iniciado corretamente, e posso ver as DLLs de tempo de execução sendo carregadas da pasta winsxs.

O que poderia fazer com que as dlls do WinSXS não estivessem disponíveis logo após o login?

Responder1

Winsxs .dlls não devem ser usados ​​ativamente. Eles são backups versionados. Se uma versão anterior de um .dll for necessária para alguma coisa, ela será retirada de lá. Se o .dll estiver realmente faltando, o local do winxs atua como um local de backup, portanto, várias dependências do kernel precisam ser carregadas para que ele funcione corretamente.

Para corrigir o problema, basta copiar o mfc90u.dll do winsxs para %windir%\system32\ ou o local onde está o .exe do programa.

A reinstalação das versões mais recentes do Microsoft Visual C++ Redistributable também deve resolver o problema, já que o .dll faz parte dessas distribuições.

informação relacionada