Por que a Entrada Userinit Causa um Loop Infinito Após uma Edição de Política de Grupo
🔍 WiseChecker

Por que a Entrada Userinit Causa um Loop Infinito Após uma Edição de Política de Grupo

Após editar um Objeto de Política de Grupo que modifica a entrada de registro Userinit, você pode descobrir que o Windows 11 reinicia repetidamente ou entra em um loop de inicialização. Isso acontece porque o valor Userinit controla quais processos são executados no logon do usuário. Se o caminho estiver corrompido, duplicado ou apontar para um executável inexistente, o processo de logon falha e reinicia em um ciclo. Este artigo explica o caminho exato do registro envolvido, por que o loop ocorre e como quebrar o ciclo usando o Modo de Segurança e o Editor de Registro.

Principais Conclusões: Corrigindo o Loop Infinito de Inicialização do Userinit no Windows 11

  • Caminho do registro HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit: O local exato onde edições de Política de Grupo podem causar um loop se o valor estiver malformado.
  • Modo de Segurança com Prompt de Comando: A única maneira de acessar o sistema quando a inicialização normal falha; use Shift+F8 ou o ambiente de recuperação para entrar.
  • Formato correto do valor Userinit: Deve ser uma lista separada por vírgulas de caminhos completos para executáveis, começando com C:\Windows\system32\userinit.exe, sem vírgula ou espaço no final.

ADVERTISEMENT

Por que a Entrada de Registro Userinit Causa um Loop Infinito Após uma Edição de Política de Grupo

A entrada de registro Userinit está localizada em HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon. Essa chave informa ao Windows quais programas iniciar imediatamente após o logon do usuário. O valor padrão é C:\Windows\system32\userinit.exe,. A vírgula no final é intencional — permite que programas adicionais sejam anexados.

Quando você edita um Objeto de Política de Grupo que tem como alvo esse valor, a política pode sobrescrever a entrada com um caminho incorreto, um caminho duplicado ou um caminho para um programa que não existe. Erros comuns incluem:

  • Remover o separador de vírgula, fazendo com que o Windows trate toda a string como um único nome de arquivo.
  • Adicionar um espaço ou ponto e vírgula no final em vez de uma vírgula.
  • Apontar para um executável de 32 bits em um sistema de 64 bits sem o caminho SysWOW64 correto.

Como o userinit.exe é responsável por iniciar o shell e a interface de logon, uma entrada quebrada impede que a área de trabalho seja carregada. O Windows detecta a falha, reinicia o processo de logon e o ciclo se repete indefinidamente.

Passos para Quebrar o Loop Infinito de Inicialização e Restaurar a Entrada Userinit

Para corrigir esse problema, você deve inicializar no Modo de Segurança ou no Ambiente de Recuperação do Windows e, em seguida, editar o registro manualmente. Siga estes passos em ordem.

Passo 1: Entre no Ambiente de Recuperação do Windows

  1. Force um desligamento
    Pressione e segure o botão físico de energia do seu dispositivo por 10 segundos até que o sistema desligue completamente. Repita isso três vezes. Na terceira reinicialização, o Windows exibirá a tela de Reparo Automático.
  2. Abra Opções avançadas
    Na tela de Reparo Automático, clique em Opções avançadas. Isso abre o Ambiente de Recuperação do Windows.
  3. Navegue até o Modo de Segurança
    Selecione Solucionar problemas > Opções avançadas > Configurações de Inicialização > Reiniciar. Após o sistema reiniciar, pressione 4 ou F4 para habilitar o Modo de Segurança. Se precisar de acesso ao Prompt de Comando, pressione 6 ou F6 para habilitar o Modo de Segurança com Prompt de Comando.

Passo 2: Abra o Editor de Registro

  1. Inicie o Editor de Registro
    Pressione Win + R, digite regedit e pressione Enter. Se você estiver no Modo de Segurança com Prompt de Comando, digite regedit no prompt de comando e pressione Enter.
  2. Navegue até a chave Userinit
    No painel esquerdo, expanda o seguinte caminho:
    HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows NT > CurrentVersion > Winlogon
  3. Localize o valor Userinit
    No painel direito, clique duas vezes no valor de string Userinit. Se você não o vir, a entrada pode ter sido excluída. Nesse caso, clique com o botão direito em um espaço vazio, selecione Novo > Valor de String, nomeie como Userinit e clique duas vezes para editar.

Passo 3: Corrija o Valor Userinit

  1. Defina o valor padrão
    No campo Dados do valor, digite exatamente o seguinte e clique em OK:
    C:\Windows\system32\userinit.exe,
  2. Verifique se não há caracteres extras
    Certifique-se de que não há espaço antes ou depois da vírgula. Não adicione uma segunda vírgula ou qualquer outro delimitador.
  3. Adicione programas adicionais se necessário
    Se sua organização exigir programas de inicialização adicionais, anexe-os após a vírgula com um caminho completo. Por exemplo:
    C:\Windows\system32\userinit.exe, C:\Program Files\SomeApp\app.exe
    Separe cada programa adicional com uma vírgula e um espaço. Não use ponto e vírgula.

Passo 4: Saia do Modo de Segurança e Reinicie Normalmente

  1. Feche o Editor de Registro
    Clique em Arquivo > Sair.
  2. Reinicie o sistema
    Pressione Win + X, selecione Desligar ou sair > Reiniciar. No Modo de Segurança com Prompt de Comando, digite shutdown /r /t 0 e pressione Enter.
  3. Teste a inicialização normal
    Se o valor Userinit era o único problema, o Windows 11 agora deve inicializar na área de trabalho sem loop.

ADVERTISEMENT

Padrões de Falha Relacionados e Correções Adicionais

Windows 11 Inicializa com Tela Preta Após Edição de Política de Grupo

Se o valor Userinit estiver completamente ausente ou definido como uma string vazia, o Windows pode exibir uma tela preta com um cursor. A correção é a mesma: inicialize no Modo de Segurança e restaure o valor Userinit padrão conforme descrito acima. Se a tela preta persistir, verifique também o valor Shell na mesma chave de registro. O valor Shell padrão deve ser explorer.exe.

Loop Infinito Ocorre Apenas Após Aplicar um GPO Específico

Se o loop começou imediatamente após aplicar um Objeto de Política de Grupo, o próprio GPO pode estar corrompido ou mal configurado. Em um controlador de domínio ou máquina local, execute gpresult /h gpresult.html em um Prompt de Comando elevado para exportar as políticas aplicadas. Revise o arquivo HTML em busca de qualquer política que defina o valor Userinit. Remova ou corrija essa política usando o Console de Gerenciamento de Política de Grupo.

Loop de Inicialização Persiste Após Corrigir Userinit

Se o loop continuar, outras entradas de registro podem ter sido alteradas. Verifique as seguintes chaves para corrupção semelhante:

  • HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell — deve ser explorer.exe
  • HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute — deve ser autocheck autochk

Se você não tiver certeza dos valores padrão, compare-os com uma instalação funcional do Windows 11 ou com um backup conhecido do registro.

Item Valor Userinit Correto Valor Incorreto Comum
Caminho base C:\Windows\system32\userinit.exe, C:\Windows\system32\userinit.exe
Delimitador final Vírgula única, sem espaço Ponto e vírgula, espaço ou nenhum delimitador
Entradas adicionais Caminhos completos separados por vírgula Caminhos relativos ou vírgulas ausentes
Incompatibilidade de arquitetura SysWOW64 para aplicativos de 32 bits em SO de 64 bits Usar system32 para aplicativos de 32 bits em SO de 64 bits

Agora você pode identificar e corrigir um loop infinito do Userinit causado por uma edição de Política de Grupo. Após corrigir a entrada de registro, o sistema deve inicializar normalmente. Para evitar loops futuros, sempre teste as alterações de Política de Grupo em um sistema que não seja de produção primeiro. Para proteção avançada, habilite a auditoria do Editor de Registro por meio de Política de Segurança Local > Configuração de Política de Auditoria Avançada > Acesso a Objetos > Auditoria de Registro para registrar todas as alterações na chave Winlogon.

ADVERTISEMENT