Estou tentando depurar uma máquina com Windows 7 que não está iniciando o Windows. A animação de carregamento do Windows é reproduzida, a tela fica preta e o cursor aparece no centro. Eu posso mover o cursor, mas nada mais acontece.
A sequência de autenticação segura (Ctrl-Alt-Delete) não faz nada. Não há tela de boas-vindas, nenhuma conta parece ser carregada. O modo de segurança também não funciona, se comporta da mesma maneira que o modo normal.
Anexei um depurador do kernel através da porta 1394 e o WinDbg no meu host está funcionando bem. Eu posso analisar os processos / threads em execução no destino durante a tela preta.
Encontrei um ótimo artigo descrevendo o processo de inicialização do Windows 7 aqui: http://www.techsupportalert.com/content/windows-7-startup.htm
Todos os SMSS.exe, CSRSS.exe, WinInit.exe, LSASS.exe e LSM.exe parecem estar carregados.
WinLogon também é carregado. É suposto iniciar o processo LogonUI.exe, mas nunca o faz. Segundo o artigo, o WinLogon deve carregar o UXinit.dll, mas nunca o faz. Posso encontrar este módulo carregado em outros PCs que tenho, mas, de acordo com o WinDbg, ele nunca é carregado no WinLogon na minha máquina de destino.
Verifiquei o rastreamento de pilha de todos os threads (~ 4) dentro do WinLogon durante a tela preta e parece que não há nada pendente. O segmento que parece ser o segmento "principal" parece executar um loop em uma função chamada WaitForLSMStart para sempre, o que eu pensei que era o problema, mas o LSM.exe está carregado e eu notei esse loop em execução no WinLogon em outras máquinas ativas em execução. Eu acredito que isso tem algo a ver com serviços de terminal?
Parece-me que algo está errado dentro do Winlogon que impede que ele inicie o processo LogonUI, e não consigo descobrir o que.
Alguma ideia?