最近研究如何通过Powershell读取远程计算机的注册表来抓取系统的相关信息。
特整理一些已经实现和验证过的方法。供参考
以下为获取.NetFramework版本的方法。
################################Code######################################## $servername=Get-Content "$PSScriptRoot\Server.txt" $OutFile = "$PSScriptRoot\checkreresult_NetFramework.csv" Foreach($server in $servername) { $key = "SOFTWARE\Microsoft\NET Framework Setup\NDP" $type = [Microsoft.Win32.RegistryHive]::LocalMachine $regKey = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey($type, $Server) $regKey2 = $regKey.OpenSubKey($key) $Subkeyname =$regKey2.GetSubKeyNames() | Sort-Object -Descending Write-Output "$server .netFrameVersion $Subkeyname" | Out-File "$Outfile" -Append } ################################Code End########################################
本文链接: https://www.pstips.net/query-remote-net-framework-version.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
感谢分享,这个适合在域环境下用当前账号操作。如果能够支持自定义用户凭据就更好了。
icm -credential
这个方法调用了.net
假如纯powershell : icm [computerName] {gci hklm:\SOFTWARE\Microsoft\NET Framework Setup\NDP}