2011-03-26 6 views
1

원격 컴퓨터에서 Internet Explorer 버전을 감지하려고합니다. Google로 검색 한 후이 글을 썼습니다. 로컬 컴퓨터에서 테스트하고 있습니다.원격 컴퓨터의 인터넷 익스플로러 버전을 감지합니다.

$pc = "."  
$key = "SOFTWARE\Microsoft\Internet Explorer"                   
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $pc)   
$regKey = $reg.OpenSubKey($key)   
$regkey.GetValue("Version") 

그러나 많은 오류가 발생합니다.

Eccezione durante la chiamata di "OpenRemoteBaseKey" con "2" argomento/i: "Impossibile trovare il percorso di rete. 
    " 
    In riga:3 car:56 
    + $reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey <<<< ('LocalMachine', $pc)   
     + CategoryInfo   : NotSpecified: (:) [], MethodInvocationException 
     + FullyQualifiedErrorId : DotNetMethodException 


Impossibile chiamare un metodo su un'espressione con valore null. 
In riga:4 car:26 
+ $regKey = $reg.OpenSubKey <<<< ($key)   
    + CategoryInfo   : InvalidOperation: (OpenSubKey:String) [], RuntimeException 
    + FullyQualifiedErrorId : InvokeMethodOnNull 

Impossibile chiamare un metodo su un'espressione con valore null. 
In riga:5 car:17 
+ $regkey.GetValue <<<< ("Version") 
    + CategoryInfo   : InvalidOperation: (GetValue:String) [], RuntimeException 
    + FullyQualifiedErrorId : InvokeMethodOnNull 

누군가가 조언을 해줄 수 있기를 바랍니다. 감사. 편집하십시오. 이 링크를 찾았습니다 http://archive.msdn.microsoft.com/PSRemoteRegistry

이 모듈은 원격 컴퓨터의 레지스트리를 쿼리하는 데 절대적으로 필요합니까?

+0

어떤 종류의 에러가 있습니까? – Pradeep

+0

안녕하세요. 오류 메시지는 이탈리아어로되어 있지만 번역이 가능하면 도움이 될 것입니다. 내 게시물을 수정하겠습니다. –

답변

3

해당 모듈없이 원격 레지스트리를 쿼리 할 수 ​​있습니다. PSRemoteRegistry 모듈을 사용하면 쉽게 사용할 수 있습니다. 그러나 원격 시스템에서 원격 레지스트리 서비스를 사용하도록 설정해야합니다. 예를 들어 PSremoteRegistry 모듈이 없으면 내 블로그 게시물을 확인하십시오. http://www.ravichaganti.com/blog/?p=1920

또한 높은 PowerShell 콘솔에서 시도해보십시오. 원격 레지스트리를 조회하려면 관리자 권한이 필요합니다. 이것이 내 시스템에서 발견 한 것입니다.

+0

안녕하세요. 답장을 보내 주셔서 다시 한 번 감사드립니다. :) 당신의 충고로 해결했습니다. 나는이 링크 http://www.computerperformance.co.uk/windows7/windows7_registry_remote_enable.htm의 튜토리얼을 따라 내 PC에서 원격 레지스트리를 사용할 수있게되었으며 이제는 스크립트가 잘 작동한다. 다시 한번 감사드립니다. 그런 다음 원격 레지스트리 서비스가 사용 가능하게됩니다. 나는 이해했다 :) –

2

Powershell을 사용하여 파일을 등록한 것처럼 레지스트리를 탐색 할 수 있습니다.

PS> Enter-PSSession -Computername "computer" 
PS[computer]> $reg = Get-Item ('HKLM:\Software\Microsoft\Internet Explorer\Version Vector') 
PS[computer]> $reg.GetValue("IE") 

아니면 :

PS> Invoke-Command -computername "computer" { $reg = Get-Item ('HKLM:\Software\Microsoft\Internet Explorer\Version Vector'); $reg.GetValue("IE") } 

당신은 액세스하려면 해당 명령의의 -credentials 매개 변수를 사용 할 수 있습니다. 그리고 액세스하려는 모든 컴퓨터에서 WinRM을 설정하십시오.

+0

고마워. 나는 시도를 줄 것이다 :) –

1

간단하지만 들리지만 .. 탐색기를 사용하여 UNC 경로를 통해 원격 PC로 이동하십시오. iexplore, 오른쪽 클릭, 속성, 세부 정보 탭으로 이동하십시오. IE 정보가 있습니다 :)

관련 문제