返回类型怎么转换?

halfheart 2005-08-11 10:39:53
我做ActiveX控件,添加方法的时候需要返回一个void的指针(void *hHandle),但是在返回类型选择里没有void*来选,只有void,但如果返回类型选择void,那我的方法里就不能用return来返回一个值。这里我该定义一个怎样的返回类型呢?
...全文
107 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
halfheart 2005-08-12
  • 打赏
  • 举报
回复
谢谢各位,问题解决了.马上结贴.
另外,我还想问另一个问题,请继续给予关注.
opentuxedo 2005-08-11
  • 打赏
  • 举报
回复
用VARIANT
halfheart 2005-08-11
  • 打赏
  • 举报
回复
honker110(honker) :
能说详细点么?
你是说自己定义类型?
我是初学者,很多东西不懂,能指点指点么?
honker110 2005-08-11
  • 打赏
  • 举报
回复
没有就自己啊,那些又不是全部
skt01 2005-08-11
  • 打赏
  • 举报
回复
用long就可以,你强行转换一下
return (long)OpenHandle( char *cc );

在调用的地方再转回去:
HV_HANDLE h = (HV_HANDLE)aa.Open(str);
opentuxedo 2005-08-11
  • 打赏
  • 举报
回复
加上个这样的方法呀
[helpstring("Open")]
HRESULT Open([in] VARIANT cc, [out,retval] VARIANT* vResult);
传入时cc.bstrVal=SysAllocString("...");
结果由VARIANT带回.
结果使用VARIANT的LPVOID
halfheart 2005-08-11
  • 打赏
  • 举报
回复
VARIANT *
没有这个类型啊.
各位能给一个详细的答案么?
kongguangming 2005-08-11
  • 打赏
  • 举报
回复
VARIANT *
halfheart 2005-08-11
  • 打赏
  • 举报
回复
还是不行.

我的问题是这样的: 要在ActiveX控件里添加一个方法:
HV_HANDLE Open( char *cc )
{
return OpenHandle( char *cc );
}
其中
HV_HANDLE OpenHandle( char *cc ) 是一个DLL的输出函数,
而类型 HV_HANDLE 是这样定的:typedef void * HV_HANDLE;

3,245

社区成员

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

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