ISWbemSink::Cancel 方法

SWbemSink 对象的 Cancel 方法将取消与此对象接收器关联的所有未完成的异步操作。

有关此语法的说明,请参阅脚本 API 的文档约定

语法

SWbemSink.Cancel()

parameters

此方法没有任何参数。

返回值

此方法不返回值。

错误代码

Cancel 方法完成后,Err 对象可能包含以下错误代码之一。

wbemErrFailed - 2147749889 (0x80041001)

错误。

wbemErrOutOfMemory - 2147749894 (0x80041006)

内存不足,无法完成此操作。

wbemErrTransportFailure - 2147749909 (0x80041015)

出现网络错误,无法正常操作。

wbemErrAccessDenied - 2147749891 (0x80041003)

当前或指定的用户名和密码无效或无权建立连接。

备注

不能仅取消一个异步调用。 如果多个使用此对象接收器的异步调用挂起,则此方法将取消使用此对象接收器的所有异步调用。 与其他对象接收器关联的异步调用将继续进行,而不受影响。

不能将此接收器分配给 Nothing 以取消异步操作。 必须调用 Cancel 方法,使 WMI 停止操作并释放关联的资源。 这对于冗长的异步操作(例如查询)或从未完成的操作(例如 ExecNotificationQueryAsync)非常重要。

注意

异步回调允许未经身份验证的用户向接收器提供数据。 这会给脚本和应用程序带来安全风险。 若要消除风险,请使用半同步或同步通信。 有关详细信息,请参阅调用方法

以下示例显示如何取消异步调用。

objwbemsink.Cancel()
set objwbemsink= Nothing

要求

要求
最低受支持的客户端
Windows Vista
最低受支持的服务器
Windows Server 2008
标头
Wbemdisp.h
IDL
Wbemdisp.idl
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemSink
IID
IID_ISWbemSink

另请参阅

SWbemSink