我已經使用Power Shell檢查是否存在使用此命令的路徑。 powershell測試路徑「HKCU:\ Software \ Microsoft \ Windows」現在怎樣才能將其延伸到遠程機器。如果我想在遠程計算機上測試註冊表路徑,語法是什麼,我試過powershell測試路徑「\\機器名\ HKCU:\軟件\微軟\ Windows」和它不工作。建議一些方法來測試它。檢查遠程機器中是否存在註冊表路徑
2
A
回答
3
您可以訪問它這裏概述:http://powershell.com/cs/blogs/tips/archive/2011/02/15/accessing-registry-remote.aspx
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', 'server123')
$key = $reg.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall')
$key.GetSubKeyNames() | ForEach-Object {
$subkey = $key.OpenSubKey($_)
$i = @{}
$i.Name = $subkey.GetValue('DisplayName')
$i.Version = $subkey.GetValue('DisplayVersion')
New-Object PSObject -Property $i
$subkey.Close()
}
$key.Close()
$reg.Close()
另一種方法是使PSRemoting和遠程計算機上使用invoke-command
和有效地運行相同的命令,你會在本地運行框。
0
您無法連接到遠程計算機的當前用戶配置單元。以下是使用Remote Regitry模塊檢查遠程服務器的hklm配置單元中是否存在遠程密鑰的示例。該模塊可在CodePlex上找到:psremoteregistry.codeplex.con
試驗REGKEY -ComputerName server1的-Key軟件\微軟\ WINOWS -Hive LocalNachine
0
This網站幫助了我。代碼基本上檢查一個密鑰,然後檢查另一個密鑰,如果第一個密鑰不存在。它還會在嘗試從中讀取值之前驗證該子項是否存在。如果兩者都不存在,try/catch可以幫助解決這個問題。
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $computerName)
$regkey = $reg.OpenSubkey("SOFTWARE\\Symantec\\Symantec Endpoint Protection\\AV\\Storages\\Filesystem\\RealTimeScan")
if(-not $regkey) {
$regkey = $reg.OpenSubkey("SOFTWARE\\Wow6432Node\\Symantec\\Symantec Endpoint Protection\\AV\\Storages\\Filesystem\\RealTimeScan")
}
$autoProtectStatus = ""
$null = ""
if ($regkey.GetValue("OnOff", $null) -ne $null) {
$autoProtectStatus = $regkey.GetValue("OnOff")
}
if ($autoProtectStatus -eq 1) {
$autoProtectStatus = "Protection On"
} elseif ($autoProtectStatus -eq 0) {
$autoProtectStatus = "Protection Off"
} else {
$autoProtectStatus = "Unknown State"
}
0
這麼多的Q & A是3歲或以上。我懷疑Powershell的新版本必須清理很多這些。儘管如此,仍然沒有直接的命令來檢查遠程計算機上的註冊表(據我所知)。這工作 - (?這是不是比其他答案簡單雖然)它會檢查是否安裝了.NET 4.6.2
invoke-command -computername <NetBiosName> -scriptblock {test-path -Path
"HKLM:\Software\Microsoft\.NetFramework\v4.0.30319\SKUs\.NetFramework,
Version=v4.6.2"}
你也可以把腳本塊內容爲*的.ps1文件(這裏的一切都在{}然後用調用它:調用命令-ComputerName NETBIOSNAME -FilePath「FQLP」
相關問題
- 1. 檢查是否存在註冊表項
- 2. 是否存在.net中的註冊表鍵路徑的Path.Combine?
- 3. 檢查遠程機器上是否存在文件
- 4. php:檢查路徑是否存在?
- 5. 檢查註冊表項是否存在總是失敗
- 6. 檢查服務器上的路徑是否存在於Java中
- 7. 檢查組是否存在遠程
- 8. 檢查是否存在遠程文件
- 9. 遠程PHP getimagesize()/檢查是否存在
- 10. node.js檢查是否存在遠程URL
- 11. MS SQL Server檢查是否存在已註冊的程序集
- 12. 如何檢查註冊表項是否存在
- 13. vb.net檢查是否存在註冊表子項值
- 14. 如何檢查註冊表項是否存在?
- 15. 檢查卷是否存在 - 通過註冊表
- 16. Java RMI - 檢查註冊表是否存在
- 17. 檢查是否存在與python的註冊表項
- 18. 檢查一個註冊表項是否存在python
- 19. 檢查一個值註冊表是否與QSettings存在
- 20. 如何使用C#檢查註冊表值是否存在?
- 21. 檢查遠程服務器上是否存在文件並在magento屬性中保存th url路徑
- 22. 遠程註冊表
- 23. 檢查路徑是否在url中
- 24. 檢查對象是否在路徑中
- 25. 用ssh檢查遠程主機上是否存在文件
- 26. 檢查驅動器是否存在(字符串路徑)
- 27. 如何檢查tlb文件是否使用C++在註冊表中註冊?
- 28. 使用DFS檢查機器人路徑是否可能
- 29. 檢查文件路徑是否正確,但不檢查文件是否存在
- 30. 如何檢查路徑是否存在或不在java中?
thts gr8..how檢查我如果單獨的鍵退出使用這種方法,只有這樣才能清潔香港的存在是。使用異常。有沒有其他直接的方法可以做到這一點? – sriram 2012-04-23 06:18:46
invoke命令對我的目的很酷。謝謝! – sriram 2012-04-23 06:49:05