Condividi tramite


Risoluzione dei problemi WMI

Quando si accede a dati wmi locali o remoti in un'applicazione o in uno script, è possibile che si verifichino errori che vanno dalle classi mancanti all'accesso negato. I provider hanno anche opzioni di debug e classi di risoluzione dei problemi disponibili.

Nota

Le informazioni contenute in questo argomento sono destinate agli sviluppatori e agli amministratori IT. Se si è un utente finale che ha riscontrato un messaggio di errore relativo a WMI, visitare supporto tecnico Microsofte cercare il codice di errore visualizzato nel messaggio di errore. Per altre informazioni sulla risoluzione dei problemi relativi agli script WMI e al servizio WMI, vedere WMI non funziona.

Utilità di diagnosi WMI

Importante

L'utilità di diagnosi WMI (WMIDiag.exe) non è più supportata, a partire da Windows 8 e Windows Server 2012.

Windows 7, Windows Server 2008 R2, Windows Vista e Windows Server 2008:

Se WMI restituisce messaggi di errore, tenere presente che potrebbero non indicare problemi nel servizio WMI o nei provider WMI. Gli errori possono avere origine in altre parti del sistema operativo ed emergere come errori tramite WMI. In nessun caso è necessario eliminare il repository WMI come primo passaggio; poiché l'eliminazione del repository può causare danni al sistema o alle applicazioni installate.

In precedenza, per ottenere altre informazioni sull'origine del problema, era possibile scaricare ed eseguire l'utilità diagnostica da riga di comando WMI. Questo strumento ha prodotto un report che in genere potrebbe isolare l'origine del problema e fornire istruzioni su come risolverlo. Il report ha inoltre supportato i servizi di supporto Microsoft per assistere l'utente. L'utilità di diagnosi WMI era disponibile in precedenza nell'Area download.

In qualità di scrittore per un provider, potresti anche riscontrare problemi di debug, a meno che tu non stia scrivendo un provider disaccoppiato . Per ulteriori informazioni, consultare i fornitori di debug .

Registrazione e traccia

I file di log WMI non esistono più; sono stati sostituiti da Event Tracing for Windows (ETW). Per altre informazioni, vedere Traccia attività WMI, Registrazione attività WMIe file di log WMI.

Risoluzione dei problemi in script e applicazioni

WMI contiene un insieme di classi per la risoluzione dei problemi delle applicazioni client che utilizzano i provider WMI. Per altre informazioni, vedere Risoluzione dei problemi delle applicazioni client WMI.

Come gli autori dei provider possono prevenire i problemi di WMI

Gli scrittori di provider possono prevenire molti problemi che compaiono nei messaggi di errore tramite WMI eseguendo le seguenti azioni:

Per ulteriori informazioni, vedere Provider di debug, Fornitura di dati a WMIe Configurazione dei provider e classi di risoluzione dei problemi.

Accesso negato

Gli errori di accesso negato segnalati da script e applicazioni che accedono a spazi dei nomi WMI e ai dati rientrano in genere in tre categorie. Nella tabella seguente sono elencate le tre categorie di errori e i problemi che potrebbero causare gli errori e le possibili soluzioni.

Errore Possibili problemi Soluzione
0x800706BA HRESULT_FROM_WIN32(RPC_S_SERVER_UNAVAILABLE)
Problema del firewall o server non disponibile.
Il computer in realtà non esiste o Windows Firewall sta bloccando la connessione
Connessione a Vista: netsh advfirewall firewall set rule group="Strumentazione gestione Windows (wmi)" new enable=yes Connessione al livello inferiore: Consenti la regola "Amministrazione remota" in Windows Firewall.
0x80070005 E_ACCESS_DENIED
Accesso negato dalla sicurezza DCOM.
L'utente non ha accesso remoto al computer tramite DCOM. In genere, si verificano errori DCOM durante la connessione a un computer remoto con una versione diversa del sistema operativo.
Assegnare all'utente le autorizzazioni di avvio remoto e attivazione remota in dcomcnfg. Fare clic con il pulsante destro del mouse su My Computer-> Proprietà. In Sicurezza COM fare clic su "Modifica limiti" per entrambe le sezioni. Assegna all'utente accesso remoto, avvio remoto e attivazione remota. Passare quindi a Configurazione DCOM, trovare "Strumentazione gestione Windows" e assegnare all'utente l'avvio remoto e l'attivazione remota. Per altre informazioni, vedere connessione tra sistemi operativi diversi
0x80041003 WBEM_E_ACCESS_DENIED
Accesso negato da un provider di
L'utente non dispone dell'autorizzazione per eseguire l'operazione in WMI. Ciò può verificarsi quando si eseguono query su determinate classi come utente con diritti limitati, ma la maggior parte delle volte si verifica quando si tenta di richiamare metodi o modificare istanze WMI come utente con diritti limitati. Lo spazio dei nomi a cui ci si connette è crittografato e l'utente sta tentando di connettersi con una connessione non crittografata
Concedere all'utente l'accesso con il controllo WMI (assicurarsi che Remote_Access impostato su true) Connettersi usando un client che supporta la crittografia.
  • In genere, si verificano errori DCOM durante la connessione a un computer remoto con una versione diversa del sistema operativo.

  • I provider possono anche negare l'accesso ai dati in spazi dei nomi specifici o potrebbero richiedere determinati livelli di sicurezza della connessione. Per ulteriori informazioni, vedere Sicurezza del processo dell'applicazione client e hosting e sicurezza del provider.

  • Errori di accesso negato dalle modifiche al Firewall di Connessione Internet (ICF).

    Per altre informazioni, vedere Connessione tramite Windows Firewall.

  • Un errore di accesso negato viene restituito dalla sicurezza DCOM quando un client a bassa integrità tenta di accedere a WMI. Ad esempio, un controllo ActiveX in esecuzione in Internet Explorer, con il livello di sicurezza impostato su basso, non ha accesso per eseguire operazioni WMI locali.

    Windows 7: gli utenti con integrità bassa dispongono di autorizzazioni di sola lettura per le operazioni WMI locali.

Informazioni sugli errori

Quando viene visualizzato un messaggio di errore da WMI, è possibile individuare il messaggio in costanti di errore WMI o, per la creazione di script, WbemErrorEnum. Tuttavia, le informazioni fornite solo dall'errore sono in genere insufficienti per determinare cosa accade. Il danneggiamento del repository WMI può essere mascherato come classi o istanze "non trovate".

Per altre informazioni sugli errori WMI:

Risoluzione dei problemi WMI

la tracciatura dell'attività WMI

Registrazione attività WMI