易语言获取COM对象的类型名称
.版本 2
.子程序 _临时子程序
.局部变量 Object, 对象
Object.创建 (“WinHttp.WinHttpRequest.5.1”, )
信息框 (GetObjectClassName (Object), 0, , )
.子程序 GetObjectClassName, 文本型, 公开, 获取对象类型名称
.参数 object, 对象
.局部变量 IDispatch, 对象
.局部变量 ITypeInfo, 对象
.局部变量 pName, 整数型, , , ' 本源码来自三叶资源网(www.sanye.cx)
.局部变量 len, 整数型
.局部变量 buffer, 文本型
IDispatch.取接口 (object, #IID_IDispatch)
CallInstanceMethod (IDispatch, 4, #NULL, #NULL, P_OBJECT (ITypeInfo))
CallInstanceMethod (ITypeInfo, 12, -1, P_DWORD (pName), #NULL, #NULL, #NULL)
len = WideCharToMultiByte (936, #NULL, pName, -1, 字符 (0), #NULL, #NULL, #NULL)
buffer = 取空白文本 (len)
WideCharToMultiByte (936, #NULL, pName, -1, buffer, 取文本长度 (buffer), #NULL, #NULL)
返回 (buffer)
.子程序 CallInstanceMethod, 整数型, , 动态调用COM接口方法
.参数 Instance, 对象
.参数 Index, 整数型
.参数 arg1, 整数型, 可空
.参数 arg2, 整数型, 可空
.参数 arg3, 整数型, 可空
.参数 arg4, 整数型, 可空
.参数 arg5, 整数型, 可空
.参数 arg6, 整数型, 可空
.参数 arg7, 整数型, 可空
.参数 arg8, 整数型, 可空
.参数 arg9, 整数型, 可空
.参数 arg10, 整数型, 可空
.局部变量 This, 整数型
.局部变量 parms, 整数型, , "0"
This = pDWORD (P_OBJECT (Instance))
加入成员 (parms, This)
.计次循环首 (1, )
.如果 (是否为空 (arg1))
跳出循环 ()
.否则
加入成员 (parms, arg1)
.如果结束
.如果 (是否为空 (arg2))
跳出循环 ()
.否则
加入成员 (parms, arg2)
.如果结束
.如果 (是否为空 (arg3))
跳出循环 ()
.否则
加入成员 (parms, arg3)
.如果结束
.如果 (是否为空 (arg4))
跳出循环 ()
.否则
加入成员 (parms, arg4)
.如果结束
.如果 (是否为空 (arg5))
跳出循环 ()
.否则
加入成员 (parms, arg5)
.如果结束
.如果 (是否为空 (arg6))
跳出循环 ()
.否则
加入成员 (parms, arg6)
.如果结束
.如果 (是否为空 (arg7))
跳出循环 ()
.否则
加入成员 (parms, arg7)
.如果结束
.如果 (是否为空 (arg8))
跳出循环 ()
.否则
加入成员 (parms, arg8)
.如果结束
.如果 (是否为空 (arg9))
跳出循环 ()
.否则
加入成员 (parms, arg9)
.如果结束
.如果 (是否为空 (arg10))
跳出循环 ()
.否则
加入成员 (parms, arg10)
.如果结束
.计次循环尾 ()
返回 (CallWindowProcMethod ({ 85, 139, 236, 86, 139, 117, 16, 141, 78, 255, 133, 201, 124, 21, 139, 69, 12, 141, 4, 136, 65, 139, 16, 137, 85, 16, 255, 117, 16, 131, 232, 4, 73, 117, 242, 255, 85, 8, 137, 69, 12, 139, 69, 20, 133, 192, 116, 13, 141, 4, 181, 0, 0, 0, 0, 137, 69, 16, 3, 101, 16, 139, 69, 12, 94, 93, 194, 16, 0 }, pDWORD (pDWORD (This) + Index × 4), parms, 取数组成员数 (parms), 假))
.子程序 P_OBJECT, 整数型, 公开, 取对象指针
.参数 Object, 对象, 参考
置入代码 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })
' mov eax,[ebp+8]
' mov eax,[eax]
' leave
' retn 04
返回 (0)
.子程序 P_DWORD, 整数型, 公开, 取整数型指针
.参数 DWORD, 整数型, 参考, 整数
置入代码 ({ 139, 69, 8, 137, 236, 93, 194, 4, 0 })
返回 (0)' 本源码来自三叶资源网(www.sanye.cx)
.子程序 pDWORD, 整数型, 公开, 读指针整数
.参数 Pointer, 整数型, , 指针
置入代码 ({ 49, 192, 129, 125, 8, 0, 0, 1, 0, 126, 9, 139, 69, 8, 133, 192, 116, 2, 139, 0, 137, 236, 93, 194, 4, 0 })
返回 (0)
易语言+object对象
易语言com对象变体类型
易语言com对象实例
易语言对象增强模块
易语言对象操作模块
易语言com对象传递
对象+获取+易语言
易语言对象模块
易语言COM对象