【发布时间】:2012-11-21 22:09:24
【问题描述】:
我有许多生成 COM DLL 的项目,这些项目输出以下内容:
projectname_i.h
projectname_i.c
projectname_p.c
projectname_i.tlb
然后在另一个项目使用此 DLL 时,它的使用方式如下:
#import "projectname.tlb" named_guids no_namespace
我想将其更改为使用包含而不是导入。
想要从 #import 更改为 #include 背后的原因是因为我想启用 /MP 编译器开关以加快构建时间。
http://msdn.microsoft.com/en-us/library/bb385193.aspx
所以我想知道的是:
- 为什么 COM DLL 有一个 TLB 和一个 H?
- 应该使用哪个以及为什么?
- 使用#include 和#import 有什么区别?切换到#include 会产生任何不可预见的后果吗?
【问题讨论】:
标签: visual-studio-2010 visual-c++ com idl