大佬教程收集整理的这篇文章主要介绍了windows – 检查注册表值是否等于1无法正常工作,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
一切都很好.脚本运行愉快,没有任何错误.问题是,当我返回并远程检查目标注册表值时,我发现该值不是1.脚本只是为.csv中的每一行创建一个文件.
我究竟做错了什么?
编辑***我发现一个问题我在注册表路径的$key变量中输入了错误. 2013年7月17日2:21p
$File = Import-Csv 'c:\temp\machines.csv' foreach ($line in $filE) { $machinename = $line.machinename trap [Exception] {ConTinuE} $reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("LocalMachine",$MachineName) $key = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon" $regkey = "" $regkey = $reg.opensubkey($key) $keyValue = "" $keyValue = $regKey.GetValue('AutoadR_438_11845@inlogon') if ($keyValue = "1") { try { $textFile = New-Item -Path "c:\temp\autologin" -Name $Machinename -ItemType "File" } catch { $msg = $_ $msg } } $Results = $Machinename,$keyValue Write-host $Results #Output Below Here: }
if ($keyValue = "1")
进入这个:
if ($keyValue -eq "1")
有关更多信息,请参阅Get-Help about_Operators
.
你这么做太复杂了,BTW.这样的东西应该足够了:
$keyname = 'SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon' Import-Csv 'C:\temp\machines.csv' | % { $reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("LocalMachine",$_.machineName) $key = $reg.openSubkey($keyName) $value = $key.GetValue('AutoadR_438_11845@inlogon') if ($value -eq "1") { $filename = Join-Path "c:\temp\autologin" $_.machinename try { touch $filename $textFile = Get-Item $filename } catch { $_ } } Write-Host ($_.machinename,$value) }
以上是大佬教程为你收集整理的windows – 检查注册表值是否等于1无法正常工作全部内容,希望文章能够帮你解决windows – 检查注册表值是否等于1无法正常工作所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。