0

I want to run a query (for example CIM_Memory) on a remote computer, in that case it's a virtual machine. I use this code in Powershell:

Get-WmiObject CIM_Memory -ComputerName IPADDRESS -Credential USERNAME

Of course with an actual IP and Username. RemoteAdmin is enabled on both OS (both Win7).

I'm getting this exception:

Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)

Since it's Win7 with the UAC feature, the users get an access token. So there's this registry entry:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\ LocalAccountTokenFilterPolicy

After setting this to 1, still getting the same exception. What could be the problem?

4

3 に答える 3

0

可能であれば、psリモーティングを有効にすることを強くお勧めします。このようにして、ターゲットコンピューターにローカルのwmi呼び出しを実行し、レポートを返すように指示できます。

WMIには、ファイアウォール、ランダムポートに関して多くの問題があります。

于 2012-04-01T08:48:21.553 に答える
0

MSDNのWMI トラブルシューティングセクションを読みましたか? あなたのエラーについて言われていることは次のとおりです。

0x80070005 – E_ACCESS_DENIED - DCOM セキュリティによってアクセスが拒否されました。

ユーザーは、DCOM を介してコンピューターにリモート アクセスできません。通常、オペレーティング システムのバージョンが異なるリモート コンピュータに接続すると、DCOM エラーが発生します。

dcomcnfg で、ユーザーにリモート起動とリモート アクティベーションのアクセス許可を付与します。[マイ コンピュータ] を右クリック -> [プロパティ] [COM セキュリティ] の下で、両方のセクションの [制限の編集] をクリックします。リモート アクセス、リモート起動、およびリモート アクティベーションを希望するユーザーに付与します。次に、DCOM 構成に移動し、「Windows Management Instrumentation」を見つけて、必要なユーザーにリモート起動とリモート アクティベーションを与えます。詳細については、異なるオペレーティング システム間の接続を参照してください。

于 2012-03-31T16:38:36.787 に答える
0

次に psremoting を有効にします。次に、dcom プロトコルの代わりに wsman プロトコルを使用し、代わりに get-ciminstance または invoke-command を使用できます。

于 2020-08-30T17:14:40.427 に答える