Skip to content

vbaCastObj

根据给定的IID,返回重新解释为另一个COM接口的对象,如果对象未实现该接口则返回Nothing

语法:vbaCastObj( Obj , IID ) As IUnknown

Obj
必需 stdole.IUnknown。要转换的对象。
IID
必需 Any。要查询的接口ID——接受为16字节的GUID结构或注册表格式的String{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx})。

这是IUnknown::QueryInterface的直接封装:询问对象是否实现了请求的接口,如果实现了则返回该接口的引用。如果没有,则返回Nothing

示例

vb
Const IID_IPicture As String = "{7BF80980-BF32-101A-8BBB-00AA00300CAB}"

Dim Pic As Object = LoadPicture("logo.bmp")
Dim AsPicture As IUnknown = vbaCastObj(Pic, IID_IPicture)
If Not AsPicture Is Nothing Then
    ' Use AsPicture as an IPicture.
End If

另请参阅

twinBASIC及其LOGO版权为作者"韦恩"所有