社区
ATL
帖子详情
要在ATL DLL 的接口中传递自定义结构体怎么办,需要大家帮忙。
huhaibo777
2005-01-16 10:10:22
#typedef struct aaa{
long l,
BSTR str,
BOOL on
}
IBbbPtr pBbb(__uuidof(Bbb));
pBbb->function(传递上面定义的结构体);
pBbb.Release;
要在接口函数中传递这个结构体,应该怎样做?
...全文
299
9
打赏
收藏
要在ATL DLL 的接口中传递自定义结构体怎么办,需要大家帮忙。
#typedef struct aaa{ long l, BSTR str, BOOL on } IBbbPtr pBbb(__uuidof(Bbb)); pBbb->function(传递上面定义的结构体); pBbb.Release; 要在接口函数中传递这个结构体,应该怎样做?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
SeekTruth
2005-01-20
打赏
举报
回复
qiangorqiang(qiangqiang)仁兄说的虽然麻烦了一点,可是最通用的解决方案.
savage54321
2005-01-19
打赏
举报
回复
那就要麻烦你老兄包装一下了!我觉得你还没明白ms推出COM和DCOM得目的。目的在于程序集的异步网络调用,而不是同步的数据传输.如果你要求的代码实施性强就要使用activex开发
huhaibo777
2005-01-19
打赏
举报
回复
如果在传递的结构体里有SOCKET s 这样的结构,在IDL不能定义这样的结构体呀??????
evlon
2005-01-19
打赏
举报
回复
帮人UP
qiangorqiang
2005-01-18
打赏
举报
回复
SAFEARRAY *pArray;
aaa data;
....
pArray = SafeArrayCreateVector(VT_I1 , 0 , sizeof(aaa));
char *pMem;
SafeArrayAccessData(pArray , (void **)&pMem);
memcpy(pMem , &data , szieof(aaa));
SafeArrayUnaccessData(pArray);
然后调用接口函数.
取出数据。
SAFEARRAY *pArray;
aaa data;
....
char *pMem;
SafeArrayAccessData(pArray , (void **)&pMem);
memcpy(&data , pMem , szieof(aaa));
SafeArrayUnaccessData(pArray);
savage54321
2005-01-18
打赏
举报
回复
不用像qiangorqiang(qiangqiang)兄说的那么麻烦。在idl定义自己的结构就好了!
huhaibo777
2005-01-18
打赏
举报
回复
谢几位仁兄了。
kenwhale
2005-01-18
打赏
举报
回复
http://www.mvps.org/vcfaq/com/4.htm
seaskyfox
2005-01-17
打赏
举报
回复
把结构定义到idl中
使用WTL进行Windows桌面应用开发-第一部
基于Windows平台的
ATL
/WTL桌面应用程序开发. 使用C/C++作为开发语言, 开发Windows本地桌面程序. WTL界面库是MFC的替代选择, 是Win32界面编程的薄封装,可以说学会WTL开发即学会了Win32界面开发。 适合
中
小型公司开发...
ATL
的
dll
与Qt程序通信和
传递
消息
ATL
的
dll
与Qt程序通信和
传递
消息 开发时遇到的
需要
完成的需求是:Windows右键菜单拓展,增加菜单项,但具体增加的菜单项的名称
需要
从Qt应用程序
中
获取状态进而显示不同名称,因此
需要
ATL
的
dll
与Qt应用程序之前进程消息
传递
和通信。 Windows下发送消息的方法有几种: SendMessage:阻塞的,等窗口程序处理完消息再返回。 PostMessage:不阻塞,将消息放到消息队列
中
立即返回。通过指定目标窗口句柄来确定目标线程,通常情况下由窗口过程来处理消息。 SendMessageTimeout
关于com
自定义
参数的
传递
COM深入理解(下) ——方法参数类型为CRuntimeClass*、void*等 本文上篇已经说明了类对象实际是一个结构实例,并且为了实现进程间
传递
类对象指针以达到引用的目的,
需要
为此类专门编写一个代理类,并在
传递
时例示(即实例化)其一个对象以实现代理对象。而此代理类必定分成两部分,即一部分的成员函数专门在客户进程被调用,另一部分专门在组件进程被调用以实现进程间的数据
传递
进
ATL
使用.rgs注册脚本文件操作注册表注册Com组件
1、
ATL
注册组件 1.1、 创建注册脚本 注册脚本通过操作 系统注册表完成Com服务的注册,通过数字形式而非代码API的形式完成,这种形式显得更加简单有效,因为它只
需要
几行数字代码就可以将一个Key添加到注册表
中
。使用
ATL
向导时,会自动的生成一个后缀为.rgs的注册脚本文件,
ATL
在服务安装时,会自动的调用脚本文件,实现对注册表的修改,完成Com服务的注册。 1.1.1、基本术语 符号释义 符号 解释 ::= ...
VB和VC混合编程
我们在编写Visual Basic应用程序的时候常常
需要
自己动手编写一些库函数或ActiveX控件,而这些函数或者控件常常采用VC++语言来写,因而也常为VB和VC两种语言之间不同参数类型、内存空间使用方法等问题为难,怎么做好呢?本文介绍了在VB和VC混合编程的情况下对这些问题的解决方法。 一、
自定义
类型参数向
DLL
库函数的
传递
用VB, VC++进行混合编程时,通常
需要
在VB
中
调用
ATL
3,245
社区成员
48,539
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章