如何直接导入idl文件?

snaill 2006-03-29 06:00:19
在一个COM中定义了一个IDL文件,将它拷贝到新的COM中,然后在在这个项目的IDL文件中添加
import "xx.idl";

编译缺少头文件,拷贝头文件都项目,编译说无法找到类型库

一般导入dll文件好像没有这样的问题,请问应该怎么导入idl文件?导入dll和导入idl不是应该一样的效果吗?
...全文
461 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
whtank 2006-05-22
可以把老的IDL 生成类型库,再在新的工程里引入这个库就可以了。
#import "libid: old type library uuid" named_guids no_implementation no_namespace raw_interfaces_only embedded_idl
  • 打赏
  • 举报
回复
snaill 2006-03-30
或者说,在一个项目里面多个idl文件,如何能在编译的时候让VS自动的对每一个idl文件都作生成.h/.c/.tlb/_p.c/_i.c的操作
  • 打赏
  • 举报
回复
snaill 2006-03-30
现在就是用新项目中的idl import老的idl,可是出现未定义的情况,好像是在_i.c中定义的,

我想知道的是,
能不能把idl中的定义在新的项目编译的时候直接生成这些文件,或者把需要生成的内容直接在新项目中idl生成的_i.c/.h中?
  • 打赏
  • 举报
回复
pomelowu 2006-03-30
简单点,直接用MIDL.exe命令行下就可以编译idl文件了。相应的.h/.c/.tlb/_p.c/_i.c都会生成。
  • 打赏
  • 举报
回复
yongdu 2006-03-30
idl文件只能在另一个idl中include

idl不能导入,但通过midl可以编译生成所需头文件和定义:将idl包含进工程,打开idl,Ctrl+F7即可生成对应头文件和代理/桩子等
  • 打赏
  • 举报
回复
pomelowu 2006-03-30
写个批处理。^_^
  • 打赏
  • 举报
回复
相关推荐
发帖
ATL
加入

3231

社区成员

ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
申请成为版主
帖子事件
创建了帖子
2006-03-29 06:00
社区公告
暂无公告