能否实现对dll, com的方法按名字调用。 对dll可以动态加载,然后通过名字取得方法指针,从而实现该功能,com对象能否有类似的方法可以采用。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 about 100 lines source code to Gongxy: give the sample code,ok? thanks. 好麻烦的说,先把dll load(loadlibrary)进来,然后用getprocaddress去得到dllgetclassobject,调用它得到你要的对象的IUnknown接口。根据函数名去引用函数,如果com 对象实现了Idispatch接口,那就好办了,用idispatch 的方法getidsofnames和invoke就行了。对于没有实现idispatch 的com,首先去读类型库(dll注册过可在注册表中读,如果没有的话就把dll资源中的tlb文件读出来),然后找你要的函数在哪个接口中,然后用queryinterface得到该接口,接口都有了,你就能到到v-table,然后根据你要的函数在该接口中的相对位置,在v-table中去找该函数的地址。 cnzdgs没分了,帮他散一下 子窗体的消息与父窗体 HMENU与HWND什么区别? 菜鸟请教:如何自动生成纹理 ,急急急 欢迎加入网络蜘蛛讨论群24257729 计算2的400次方 98的进程管理不一样? 哪里能找到旧版的msdn?? 不考虑协议,直接对网卡读怎么实现? 一个关于计时器的问题 CListCtrl中的FindItem函数是否只能根据第一项的内容查询?? Visual c++什么书最好?
得到dllgetclassobject,调用它得到你要的对象的IUnknown接口。
根据函数名去引用函数,如果com 对象实现了Idispatch接口,
那就好办了,用idispatch 的方法getidsofnames和invoke就行了。
对于没有实现idispatch 的com,首先去读类型库(
dll注册过可在注册表中读,如果没有的话就把dll资源中的tlb文件读出来)
,然后找你要的函数在哪个接口中,然后用queryinterface得到
该接口,接口都有了,你就能到到v-table,然后根据你要的函数
在该接口中的相对位置,在v-table中去找该函数的地址。