关于Configuration Manager错误
在 Configuration Manager 中,发生Configuration Manager错误时,可能是 Windows Management Instrumentation (WMI) 或 SMS 提供程序错误。
__ExtendedStatus 实例中报告了 WMI 错误。 实例中 SMS_ExtendedStatus
报告了 SMS 提供程序错误。
处理错误的方式取决于所使用的编程语言。
使用 WMI 处理错误
在 VBScript 中,如果在同步操作期间发生错误,则 error 对象 Number
属性为非零。 通常,在对 SMS 提供程序进行更改或查询后检查此值。 在异步操作中,你会收到回调函数的错误 OnCompleted
对象。
获取错误对象实例后,可以检查 __Class 属性以确定错误的来源。 WMI 针对 WMI 错误创建 __ExtendedStatus 实例,SMS 提供程序为 SMS 提供程序错误创建 实例 SMS_ExtendedStatus
。
SMS_ExtendedStatus
派生自 __ExtendedStatus。 SMS 提供程序错误的详细信息也可以在 SMSProv.log 中找到。
有关详细信息,请参阅如何使用 WMI 处理Configuration Manager同步错误。
如何使用 WMI 处理Configuration Manager异步错误。
使用托管 SMS 提供程序处理错误
若要使用托管 SMS 提供程序处理Configuration Manager错误,请捕获特定于Configuration Manager异常。
异常 | 说明 |
---|---|
SmsQueryException |
SmsQueryException 在发生Configuration Manager查询错误时引发 。 它提供特定于Configuration Manager (SMS_ExtendedStatus ) 的异常信息,并封装引发的任何 WMI 异常。SmsQueryException.ErrorCode 映射到等效的 System.ManagementException 异常代码。SmsQueryException.ExtendStatusCode 映射到 中 SMS_ExtendedStatus.ErrorCode 引发的 SMS 提供程序错误代码。 |
SmsConnectionException |
SmsConnectionException 当与 WMI 的连接丢失时引发 。 |
SmsException |
SmsException 是从中派生和 SmsConnectionException 的SmsQueryException 基类。 它永远不会引发,但可以捕获捕获 SmsQueryException 和 SmsConnectionException 。 |
访问__ExtendedStatus和SMS_ExtendedStatus对象
由于 __ExtendedStatus 和 SMS_ExtendedStatus
不是由托管 SMS 提供程序包装的,因此必须使用 System.Management ManagedException 对象。
如果不需要访问错误 WMI 对象,则可以访问 SMSException.Details 中的异常详细信息字符串。
有关处理同步异常的详细信息,请参阅如何使用托管代码处理Configuration Manager同步错误。
有关处理异步异常的详细信息,请参阅如何使用托管代码处理Configuration Manager异步错误。
另请参阅
关于错误如何使用 WMI 处理Configuration Manager同步错误
如何使用 WMI 处理Configuration Manager异步错误
使用托管代码Configuration Manager异步错误
如何使用托管代码处理Configuration Manager同步错误