idl编译生成头文件和失败问题记录
来源:互联网 发布:大数据龙头股票 编辑:程序博客网 时间:2024/06/05 06:06
使用Com时候,需要用idl,和idl编译出.h文件,操作方法
1、创建一个空win32或者控制台项目:
添加新项目-->Visual C++ -->Win32-->Win32控制台应用程序/Win32项目-->选择目录和设置项目名
“应用程序设置”中,附加选项选择“空项目”
点击“完成”
2、添加idl:
选择项目-->右键选择“添加新项”-->Visual C++ -->Midl文件(.idl)--->设置文件名-->"添加"
3、由于个人习惯,喜欢把生成文件的xxx_c.h的“_c”去掉:
“属性”--》MIDL-->输出-->头文件-->将其中的%(Filename)_C.h改为%(Filename).h
4、idl中添加代码
[object,uuid(34C5A3F4-3CC4-46F4-9384-5329C156F5BA),dual,nonextensible,pointer_default(unique)]interface TestController: IUnknown{[id(1), helpstring("TestController func")] HRESULT TestFunc([in] BSTR bstrParam );};a)其中的“uuid”为唯一,可以用“工具”-->“创建GUID”重新生成,这个ID需要是唯一
b)TestController设成自己的类名,需要继承IUnknow
c)TestController中的“id”必须不重复,有些Com调用是通过函数id调用的
d)"helpstring"为方法说明
e)TestFunc为函数名称,
f)HRESULT 返回值为,返回的错误码可以MSDN查询
g)bstrParam为参数,参数类型不一定是BSTR,具体类型不再累述,可以自行查阅相关资料;
5、错误排查:
如出现:>LINK : error LNK2001: 无法解析的外部符号 _WinMainCRTStartup类的错误,需要设置不启用增量连接:
项目属性-->链接器-->启用增量连接,选择“否 (/INCREMENTAL:NO)”
阅读全文
0 0
- idl编译生成头文件和失败问题记录
- jni生成头文件和编译so文件
- 使用javac编译java文件和使用javah生成C/C++头文件 遇到找不到类的问题
- .h头文件和.a静态库文件问题记录
- Idl文件编译成c++头文件
- C++头文件编译问题
- C++头文件编译问题
- C++头文件编译问题
- C++头文件编译问题
- C++头文件编译问题
- C++头文件编译问题
- C++头文件编译问题
- IIOP.net 编译多仓库IDL 失败
- android NDK开发未包含javah生成的头文件导致程序运行失败问题
- 头文件和源文件记录
- C++Template头文件和定义分开编译的问题
- C++Template头文件和定义分开编译的问题
- gcc和交叉编译头文件包含问题
- bzoj1179 tarjan缩点+spfa
- Codevs1043 [方格取数]
- 后缀表达式求值
- python3基础学习(一)
- Android-数据存储方式(IO-SharedPreferences)
- idl编译生成头文件和失败问题记录
- java 分行读取
- Kibana(二):服务器端解码解读
- Unity3D VR推拉门
- springmvc的配置
- ***线程,GCD,runloop
- java开发系统内核:让内核从严重错误中恢复
- Java菜鸟学习日记3
- (4)系统基础操作