关于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同步错误
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈