ALT编写的COM组件的参数类型问题

嗑瓜子的小胖子 2013-09-24 11:35:40
我想做把一个画图的程序段写成一个COM组件,要传递CDC类型的参数,但是编译时在IDL文件中出现错误如下:

error:expecting a type specification near xxx

其他程序也遇到这种参数类型问题,看了以前的帖子说可以转换成long型的

求教大神如何解决啊
...全文
170 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 1 楼 akirya 的回复:
最好的做法是将HWND强转成long传递过去
具体该如何去写呢,例如在ALT添加方法的时候,参数类型如何写啊,具体在哪里强制转换呢
  • 打赏
  • 举报
回复
最好的做法是将HWND强转成long传递过去
  • 打赏
  • 举报
回复
问题已通过2L大大的帮助解决,5L斑竹大大的建议我还得学习一下,谢谢楼上两位!
  • 打赏
  • 举报
回复
引用 5 楼 oyljerry 的回复:
这种情况,应该把这个参数封装起来,而不是通过参数传递,COM组件内部自己获取
斑竹大人,如何封装啊,我初次接触组件设计相关的知识,感觉自己智商好拙计,还得麻烦您详细讲解一下O(∩_∩)O哈哈~
oyljerry 2013-09-24
  • 打赏
  • 举报
回复
这种情况,应该把这个参数封装起来,而不是通过参数传递,COM组件内部自己获取
  • 打赏
  • 举报
回复
引用 3 楼 akirya 的回复:
参数写long啊,调用的时候(long)hwnd,使用的时候再转回HWND
是说在客户端程序先将HWND转换为long,然后在组件里实现时,将long转换为HWND? 是这样么大大\(^o^)/~
  • 打赏
  • 举报
回复
引用 2 楼 Joefreshfish 的回复:
[quote=引用 1 楼 akirya 的回复:] 最好的做法是将HWND强转成long传递过去
具体该如何去写呢,例如在ALT添加方法的时候,参数类型如何写啊,具体在哪里强制转换呢[/quote] 参数写long啊,调用的时候(long)hwnd,使用的时候再转回HWND

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧