Get-NetAdapter não funcionará

0

O primeiro exemplo simples usando Get-NetAdapter in Get-Help da Microsoft não funcionará na minha máquina. Alguma sugestão?

PS C:\Users\lit> Get-NetAdapter -Name *
Get-NetAdapter : Invalid class
At line:1 char:1
+ Get-NetAdapter -Name *
+ ~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : MetadataError: (MSFT_NetAdapter:ROOT/StandardCimv2/MSFT_NetAdapter) [Get-NetAdapter], CimException
    + FullyQualifiedErrorId : HRESULT 0x80041010,Get-NetAdapter

PS C:\Users\lit> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.14393.1066
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14393.1066
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

Parece que tenho o módulo NetAdapter no meu sistema.

PS C:\Users\pwatson> Get-Module -ListAvailable | Where-Object {$_.Name -Like '*NetAdapter*'}

    Directory: C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Manifest   2.0.0.0    NetAdapter                          {Disable-NetAdapter, Disable-NetAdapterBinding, Disable-NetAdapterChecksumOffload, Disable-NetAdapt...

Eu finalmente consegui ver todos os ExportedCommands, mas o Get-NetAdapter não está entre eles.

Get-Module -ListAvailable | Where-Object {$_.Name -Like '*NetAdapter*'} | Select-Object -Property {$_.ExportedCommands} | Format-Custom

Com base na resposta de Seth, tenho:

C:\Users\pwatson>winmgmt /verifyrepository
WMI repository verification failed
Error code:     0x80041003
Facility:       WMI
Description:    Access denied

Vou aceitar a resposta de Seth e postar uma nova pergunta sobre configurações de permissão.

    
por lit 20.04.2017 / 23:58

1 resposta

0

Get-NetAdpater não seria um módulo, mas sim um comando. Você precisaria executar Get-Command em vez de Get-Module . Além disso, se você ler atentamente a exceção no primeiro caso, é exceção de metadados. Está dizendo que não é possível ler a estrutura de dados de back-end. 0x80041010 parece ser o código para invalid class retornado pelo WMI. Portanto, seu WMI pode estar danificado ( isso pode ajudar ) ou pode ser que você tenha permissões insuficientes. Este último é muito mais improvável que o primeiro.

Do link acima para reconstruir você pode tentar:

1. winmgmt /verifyrepository
If the result is shown as inconsistent, go to step 2
2. winmgmt /salvagerepository
3. winmgmt /verifyrepository - to check again wmi repository had been repaired successfully

Estou deixando a solução mais avançada. Como isso deve ajudá-lo a verificar sempre que o seu WMI pode ser danificado.

    
por 21.04.2017 / 07:26