03-oct: superguardado automático

This commit is contained in:
juanminsanz
2026-10-03 21:03:27 +02:00
parent 4fa9c2ae5b
commit 3f20313f6d
2 changed files with 83 additions and 0 deletions

View File

@@ -31,6 +31,30 @@ if (-not $Password) {
[System.Runtime.InteropServices.Marshal]::ZeroFreeBSTR($BSTR)
}
# Verificar la contraseña ANTES de escribir (evita guardar una credencial incorrecta,
# que es lo que dejaba el arranque colgado en la pantalla de login)
Write-Host "`nVerificando credenciales..." -ForegroundColor Cyan
$credencialOk = $false
$tmpVerify = Join-Path $env:TEMP "autologon_verify_$PID.txt"
Remove-Item $tmpVerify -ErrorAction SilentlyContinue
try {
$sec = ConvertTo-SecureString $Password -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential("$computername\$username", $sec)
Start-Process cmd -ArgumentList "/c whoami > `"$tmpVerify`"" -Credential $cred -Wait -WindowStyle Hidden -ErrorAction Stop
Start-Sleep -Milliseconds 500
$credencialOk = (Test-Path $tmpVerify)
} catch {
$credencialOk = $false
} finally {
Remove-Item $tmpVerify -ErrorAction SilentlyContinue
}
if (-not $credencialOk) {
Write-Host "[ERROR] La contraseña NO es correcta para $computername\$username." -ForegroundColor Red
Write-Host " No se ha modificado el registro. Comprueba la contraseña e inténtalo de nuevo." -ForegroundColor Red
exit 1
}
Write-Host "[OK] Contraseña verificada." -ForegroundColor Green
# Mostrar lo que se va a configurar (SIN mostrar la contraseña)
Write-Host "`nSe configurará autologon con:" -ForegroundColor Cyan
Write-Host " AutoAdminLogon: 1" -ForegroundColor White