ISWbemSink::Cancel 方法
SWbemSink 对象的 Cancel 方法取消与此对象接收器关联的所有未完成的异步操作。
有关此语法的说明,请参阅 脚本 API 的文档约定。
语法
SWbemSink.Cancel()
参数
此方法没有任何参数。
返回值
此方法不返回值。
错误代码
完成 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 |
标头 |
|
IDL |
|
DLL |
|
CLSID |
CLSID_SWbemSink |
IID |
IID_ISWbemSink |