[adsisearcher] にクエリを実行して、信頼できるドメインと信頼できないドメインのサーバーについて、いくつかのサーバーの OU 情報を取得したいと考えていました。
$session = New-PSSession -ComputerName icvmm02
Invoke-Command -Session $session -ScriptBlock {
$compname= (Get-WmiObject "Win32_Computersystem" -namespace "root\CIMV2" -computername $comp).name
$searcher = [adsisearcher]"(&(ObjectCategory=computer)(Name=$compname))"
$ou= $searcher.FindOne() | Select-Object path
$serverou = $ou.path
}
$adou= (Invoke-Command -Session $session -ScriptBlock { $serverou })
Get-PSSession | Remove-PSSession
信頼できるドメイン内のサーバーの場合、$cred = pssession の作成中に資格情報を取得しますが、実行すると
$compname= (Get-WmiObject "Win32_Computersystem" -namespace "root\CIMV2" -computername $comp).name
$searcher = [adsisearcher]"(&(ObjectCategory=computer)(Name=$compname))"
$ou= $searcher.FindOne() | Select-Object path
それは私にエラーを与える
Exception calling "FindOne" with "0" argument(s): "An operations error occurred.
"
At line:1 char:27
+ $ou= $searcher.FindOne <<<< () | Select-Object path
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException
$serverou = $ou.path
誰かがこれを整理するのを手伝ってくれませんか。