我想通过Powershell脚本对Windows注册表进行更改。我使用老式的reg add方法,效果很好。如果我在脚本执行后运行regedit.exe,则将进行所有更改,但重新启动后这些更改将丢失...
我的代码:
# Enable Auto Logon
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /f /v "AutoAdminLogon" /t REG_SZ /d "1" > null
$name = Read-Host 'Username'
# Set username for logon
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /f /v "DefaultUserName" /t REG_SZ /d $name > null
# Set users password
$clearPassword = Read-Host 'Password'
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /f /v "DefaultPassword" /t REG_SZ /d $clearPassword > null
# How many times to auto logon? (0 means infinitive)
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /f /v "AutoLogonCount" /t REG_DWORD /d "0" > null
echo "Autologon enabled"
因此,我该怎么做才能使这些更改在Windows注册表中持久存在?
最好的祝福
peekaboo777
此行为是设计使然。
每次重新启动时,Windows都会减少AutoLogonCount。当它为零时,将删除注册表值以禁用自动登录。DefaultUserName和DefaultPassword的值也可以清除。
通常在自动Windows客户端构建/部署过程中使用此功能。
这是有据可查的。例如http://www.computerperformance.co.uk/windows7/windows7_auto_logon.htm
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句