Instead of running the GUI method (netplwiz), there’s a more efficient way to set auto logon for Windows XP, 7, 8, 10, 11 using these lines:

# setDefaultLogon.ps1
# version 0.01
# Missing feature to test whether creds are valid prior to committing... Will do that when I'm bored enough

$defaultAutologonUsername=$env:username
$defaultAutologonPassword=''

function setAutoLogon{	
	param(
		$defaultAutologonUsername=$env:username,
		$defaultAutologonPassword=''
	)
	$autoLogonRegHive='REGISTRY::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon'
	try{
		Set-ItemProperty -Path $autoLogonRegHive -Name AutoAdminLogon -Value 1
		Set-ItemProperty -Path $autoLogonRegHive -Name DefaultUserName -Value $defaultAutologonUsername
		Set-ItemProperty -Path $autoLogonRegHive -Name DefaultPassword -Value $defaultAutologonPassword
		write-host "Default logon has been set with username $defaultAutologonUsername and password of $defaultAutologonPassword"
	}catch{
		write-warning $_
	}
}

setAutoLogon $defaultAutologonUsername $defaultAutologonPassword