corrosiontears

Mitigar Bug do Windows - PC não desliga

Aug 4th, 2026
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Winbatch 4.65 KB | Fixit | 0 0
  1. @echo off
  2. setlocal enabledelayedexpansion
  3.  
  4. :: ============================================================================
  5. :: 1. VERIFICAÇÃO DE PRIVILÉGIOS ADMINISTRATIVOS
  6. :: ============================================================================
  7. net session >nul 2>&1
  8. if %errorLevel% neq 0 (
  9.     echo [ERRO] Este script DEVE ser executado como Administrador!
  10.     echo Clique com o botao direito no arquivo e selecione "Executar como administrador".
  11.     pause
  12.     exit /b 1
  13. )
  14.  
  15. echo ============================================================================
  16. echo  Diagnostico e Mitigacao do Bug de Desligamento Win 11 (BAT Version)
  17. echo ============================================================================
  18.  
  19. :: ============================================================================
  20. :: 2. VERIFICAÇÃO STRICTA DE BUILD DO WINDOWS (22H2, 23H2 e 24H2)
  21. :: ============================================================================
  22. set "WIN_BUILD="
  23. for /f "tokens=3" %%A in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CurrentBuild 2^>nul') do (
  24.     set "WIN_BUILD=%%A"
  25. )
  26.  
  27. echo [+] Build do Windows Detectada: %WIN_BUILD%
  28.  
  29. set "AFETADO=0"
  30.  
  31. :: Valida apenas as builds de interesse:
  32. :: 22621 = Windows 11 22H2
  33. :: 22631 = Windows 11 23H2
  34. :: 26100 = Windows 11 24H2
  35. if "%WIN_BUILD%"=="22621" set "AFETADO=1"
  36. if "%WIN_BUILD%"=="22631" set "AFETADO=1"
  37. if "%WIN_BUILD%"=="26100" set "AFETADO=1"
  38.  
  39. :: Se a máquina NÃO pertencer às builds afetadas, aborta a execução
  40. if "%AFETADO%"=="0" (
  41.     echo.
  42.     echo [i] Esta maquina nao pertence as builds afetadas ^(22H2, 23H2 ou 24H2^).
  43.     echo [i] Nenhum ajuste foi feito no Registro. Encerrando o script...
  44.     echo ============================================================================
  45.     echo.
  46.     pause
  47.     exit /b 0
  48. )
  49.  
  50. echo [!] AVISO: A build %WIN_BUILD% e elegivel para a aplicacao das correcoes.
  51. echo.
  52. echo [+] Aplicando modificacoes no Registro para desativar VBS, HVCI e Fast Startup...
  53.  
  54. :: ============================================================================
  55. :: 3. APLICAÇÃO FORÇADA DAS CHAVES DE REGISTRO (VBS e HVCI)
  56. :: ============================================================================
  57.  
  58. :: Desabilita a Segurança Baseada em Virtualização (VBS)
  59. reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 0 /f >nul
  60. if %errorLevel% equ 0 (
  61.     echo    [OK] EnableVirtualizationBasedSecurity definido como 0
  62. ) else (
  63.     echo    [ERRO] Falha ao gravar EnableVirtualizationBasedSecurity
  64. )
  65.  
  66. :: Desabilita o Requisito de Recursos de Segurança de Plataforma
  67. reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 0 /f >nul
  68. if %errorLevel% equ 0 (
  69.     echo    [OK] RequirePlatformSecurityFeatures definido como 0
  70. ) else (
  71.     echo    [ERRO] Falha ao gravar RequirePlatformSecurityFeatures
  72. )
  73.  
  74. :: Desabilita a Integridade de Memória / Isolamento de Núcleo (HVCI)
  75. reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Enabled" /t REG_DWORD /d 0 /f >nul
  76. if %errorLevel% equ 0 (
  77.     echo    [OK] HVCI (HypervisorEnforcedCodeIntegrity) definido como 0
  78. ) else (
  79.     echo    [ERRO] Falha ao gravar HVCI Enabled
  80. )
  81.  
  82. :: ============================================================================
  83. :: 4. DESATIVAÇÃO DO FAST STARTUP (INICIALIZAÇÃO RÁPIDA)
  84. :: ============================================================================
  85.  
  86. :: Desabilita o Hiberboot no Registro
  87. reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power" /v "HiberbootEnabled" /t REG_DWORD /d 0 /f >nul
  88. if %errorLevel% equ 0 (
  89.     echo    [OK] Fast Startup ^(HiberbootEnabled^) definido como 0 no Registro
  90. ) else (
  91.     echo    [ERRO] Falha ao desativar Fast Startup no Registro
  92. )
  93.  
  94. :: Desabilita a hibernação para matar completamente o arquivo hiberfil.sys
  95. powercfg /h off >nul 2>&1
  96. if %errorLevel% equ 0 (
  97.     echo    [OK] Hibernacao desativada via powercfg
  98. ) else (
  99.     echo    [AVISO] Nao foi possivel rodar powercfg /h off ^(pode estar indisponivel no sistema^)
  100. )
  101.  
  102. :: ============================================================================
  103. :: 5. CONCLUSÃO
  104. :: ============================================================================
  105. echo.
  106. echo ============================================================================
  107. echo  [SUCESSO] Chaves de Registro e politicas de energia atualizadas!
  108. echo  [ATENÇÃO] A alteração só surtirá efeito após REINICIAR a máquina.
  109. echo ============================================================================
  110. echo.
  111. pause
Advertisement
Add Comment
Please, Sign In to add comment