com中要在客户端应用服务器端定义的接口ID,有三种方法(不知我说的对不对)
1.#import "xxx.idl"2.#import "xxx.tlb" named_guid3.#include "xxx.h"
#include "xxx_i.c"这三种方法的区别是什么,各在什么场合下用?
盼望高手给予充分详尽的说明!!!
分不够可以再加!!!!!!!!!!!!!!
1.#import "xxx.idl"2.#import "xxx.tlb" named_guid3.#include "xxx.h"
#include "xxx_i.c"这三种方法的区别是什么,各在什么场合下用?
盼望高手给予充分详尽的说明!!!
分不够可以再加!!!!!!!!!!!!!!
解决方案 »
- 紧急紧急,求Win7 64位可安装的directx 9.0b 版本
- 求救~ TCP连接,一个客户端同时连接多个服务器问题?
- recordset GetRows的使用
- console.h你在那里???????
- 求助:为什么退出进程后,SOCKET开始有问题
- 请问在sdi中如何嵌套(不是弹出)一个CFiledialog类
- 请问哪里有Msdn for VC6.0下???
- 欢迎讨乱beginthread 里面的map难道是不安全的吗?
- ychener (贫血) 请进,谢谢热心帮忙,谢谢无私奉献,谢谢谢谢!!
- 悬赏200分,怎样实现在VC的应用程序里进行NT 用户的身份验证!
- 如何让滚动条精确的滚动?
- 通过什么方法可以知道当前系统中有哪些OLE DB PROVIDER ?(VC++中)
#define..........
场合主要看你拥有的是哪种资源 有没有定义文件
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")下面是vc知识库中对该语句的说明:
这一语句有何作用呢?其最终作用同我们熟悉的#include类似,编译的时候系统会
为我们生成msado15.tlh,ado15.tli两个C++头文件来定义ADO库。几点说明:
(1) 您的环境中msado15.dll不一定在这个目录下,请按实际情况修改
(2) 在编译的时候肯能会出现如下警告,对此微软在MSDN中作了说明,并建议我们不要理会这个警告。
msado15.tlh(405) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
COM 這東西,不用幾次是永遠也記不住的。
用第三种方法时,若客户端引用的是 &IID(接口GUID的地址)。
就编译不通过,而用第二种方法就可以。何解???????偏偏ATL中的好多class都要求 &IID 模版参数:(
有了IDL文件,可用midl编译得到TLB和 .H 和 .C。而#import "xxx.tlb" (也可以是带有类库信息Dll,ocx,exe)
VC会自动生成 xxx.tlh(Head) 和 xxx.tli.(Implementation & definitions), 将其加入项目编译。