2016-09-23 2 views
1

를 통해 원격 레지스트리 접근 단순히 WMI 및 파워 쉘을 통해 원격 컴퓨터의 레지스트리에 연결하는 스크립트가 : 우리의 300 개 서버의 대다수PowerShell은 : WMI

$Server = server1 
$HKLM = [UInt32] "0x80000002" 
$WMI_Reg = [WMIClass] "\\server1\root\default:StdRegProv" 

을이 좋은 내가 할 수 레지스트리에 대한 후속 쿼리. 그러나 일부 선택의 경우이 오류가 발생합니다.

Cannot convert value "\server1\root\default:stdregprov" to type "System.Management.ManagementClass". Error: "not found"

다음은 모두 2008 R2 서버입니다. 원래 잘못된 WMI 공급자에 문제가있어서이 오류가 발생하기 전에 cimWin32.mof를 다시 컴파일해야했습니다.

다음에 할 수있는 것에 대한 아이디어가 있습니까?

감사

답변

0

이러한 오류는 일반적으로 WMI 클래스 누락에 의해 발생합니다. 이러한 종류의 오류에 대한 해결책은 일반적으로 몇 단계가 필요합니다. https://blogs.technet.microsoft.com/askperf/2014/08/11/wmi-missing-or-failing-wmi-providers-or-invalid-wmi-class/

중요 : 마이크로 소프트에 따라, 첫 번째 단계로 MOF 파일을 다시하지 마십시오 :

"Rebuilding the repository or recompiling all of the .mof files as a first action when other steps should be taken first can cause damage to the system and/or to installed applications."

0

값을 변환 할 수 없습니다 "\ 서버 1 \

용액

이 링크에서 볼 수 있습니다 root \ default : stdregprov "를 입력하여"System.Management.ManagementClass "를 입력하십시오. 오류 : "찾을 수 없음"

이 오류는 찾고있는 키를 찾지 못했기 때문입니다. 열쇠가없는 기본적인 경우입니다. 레지스트리 키가 있는지 확인할 수 있습니까?

정보가 제공하는대로 WMI에는 문제가 없습니다.

try 및 catch 블록을 사용하여 예외를 발생시키고 앞으로 이동할 수 있습니다.