WMI-Activity Ereignis 5858, das häufig mit ResultCode-0x80041032 protokolliert wird

Dieser Artikel enthält eine Lösung zum Beheben der WMI-Activity Ereignis-ID 5858, die mit ResultCode = 0x80041032 in Windows Server 2012 R2 protokolliert wird.

Gilt für: Windows Server 2012 R2
Ursprüngliche KB-Nummer: 3124914

Symptome

Wenn Sie Windows Server 2012 R2 mit Anwendungen verwenden, die WMI-Abfragen mit IWbemServices:ExecQueryausgeben, kann der Administrator das folgende Ereignis in Ereignisanzeige beobachten:

Log Name:  Microsoft-Windows-WMI-Activity/Operational
Source:    WMI-Activity
Event ID:  5858
Level:     Error
Id = {guid}; ClientMachine = <computer>; User = <user>; ClientProcessId = <process ID>; Component = Unknown; Operation = Start IWbemServices::ExecQuery - <WMI namespace>: <Select Query Statement>; ResultCode = 0x80041032; PossibleCause = Unknown
where 0x80041032 indicates WBEM_E_CALL_CANCELLED.

Hinweis

Dieses Ereignis kann mit vielen verschiedenen ResultCode-Werten auftreten. Das in diesem Artikel beschriebene Problem gilt nur, wenn ResultCode = 0x80041032 (WBEM_E_CALL_CANCELLED).

Ursache

WMI-Activity Fehler 5858 mit ResultCode = 0x80041032 (WBEM_E_CALL_CANCELLED) gibt an, dass der WMI-Aufrufer erfolgreich ausgestellt IWbemServices:ExecQueryhat, aber das IWbemContext Objekt vor dem Abrufen des vollständigen Resultsets mithilfe der IEnumWbemClassObject::Next -Methode freigegeben hat. Wenn der WMI-Dienst weiterhin Daten für den Client vorhält, wenn der Client die Verknüpfung beendet (durch Freigabe des IWbemContext -Objekts), wird dieses Ereignis protokolliert.

Dieser Fehler kann auftreten, wenn die WMI-Anwendung mit einem Timeoutwert (lTimeout) aufruft IEnumWbemClassObject::Next , der nicht lang genug ist, um das abgefragte Objekt abzurufen, und nicht nach einem Rückgabecode von WBEM_S_TIMEDOUT (0x40004) sucht, um die Anforderung erneut auszugeben.

Lösung

Die WMI-Clientanwendung sollte so geändert werden, dass aufruft, um IEnumWbemClassObject::Next das vollständige Resultset abzurufen, bevor das IWbemContext-Objekt freigegeben wird. Wenn keine Objekte empfangen werden, stellen Sie sicher, dass der Timeoutwert (lTimeout) größer als 0 ist und nicht WBEM_S_TIMEDOUT (0x40004) zurückgegeben wird.

Weitere Informationen

Weitere Informationen finden Sie unter:

Datensammlung

Wenn Sie Unterstützung vom Microsoft-Support benötigen, empfehlen wir Ihnen, die Informationen zu sammeln, indem Sie die Schritte unter Sammeln von Informationen mithilfe von TSS für Fragen der Benutzerfreundlichkeit ausführen.