描述:
我目前知道两种方法:
1、用#import导入类型库,生成*.tlh和*.tlb,包括了函数和常量的声明;
2、用ClassWizard添加类型库,利用COleDispatchDriver间接调用COM组件;
现在,有些问题和疑问:
1、用#import方法导入Msword.olb(Word类型库),msword.tlh本身就有错,调ADO倒还蛮正常;
2、用COleDispatchDriver方法,ADO不知道怎么用,关键是Recordset.open方法中那个ActiveConnection不知道怎么填,通过COleDispatchDriver继承过来的,好象也不是纯的Adodb.Connection对象吧,反正会出错;另外,调用Word时,那些VARIANT型参数不知该怎么填,特别是PrintOut的参数,上十个,够吓人的,但在VB中这些参数根本就可全部省略的,真不只Basic怎么做的?!这种方法也不会导入类型库中的常量,很遗憾!
总起来这两种方法好象都不怎么完美,请问高手们有没有别的方法?
难道就不能象Visual Basic里面那样完美,添加类型库也方便,浏览方法、属性、常数也方便吗?
不好意思,以上好象每句话都是问题,麻烦各位了,希望大家尽量给多的回答,越多越好,这些问题令我很郁闷,有一个没搞清楚心里就不舒服,555...
解决方案1:
可以引用
yourcom.h
yourcom_i.c
你说的那些方便的引用,都是vb引用com封装的组件,
vc只是提供一些更地层的引用方法,其实也不麻烦
clw还可以直接在工程中加CWnd类型的组件类。
(project -> add to project -> components and controls )后即可。
没有遇到过这种问题! import 后加上no_namespace
解决方案5:我从来都是用import