跪求各位高手帮帮小弟解决问题,分不够就加

xuyiheng 2006-11-03 11:27:45
继续刚才的问题,我想对下面的方法生成一个ATL COM APP但是不知道参数应当如何来写.

原来的方法.h里的方法是这样 char* hmac_md5(char* text,char* key)

我写成 [id(1), helpstring("method GetResult")] HRESULT GetResult([in]BSTR text,[in]BSTR key,[out,retval]BSTR rt);

但是提示错误

error MIDL2121 : [out] only parameter must not derive from a top-level [unique] or [ptr] pointer/array : [ Type 'wireBSTR' ( Parameter 'rt' ) ]
Error executing midl.exe.

万望各位高手帮忙
...全文
269 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
OOPhaisky 2006-11-03
  • 打赏
  • 举报
回复
帮顶
stou 2006-11-03
  • 打赏
  • 举报
回复
up
wulihua11 2006-11-03
  • 打赏
  • 举报
回复
link
swimmer2000 2006-11-03
  • 打赏
  • 举报
回复
char* hmac_md5(char* text,char* key)
应该改为返回HRESULT类型的值才对.
参数和返回值以及名称要一致.

sample:
// in .h
STDMETHOD(GetHidGuid)(/*[out]*/long *guid);

// in .cpp
STDMETHODIMP CIHidCtrlObject::GetHidGuid(long *guid)
{
...
}

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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