c#调用win32的COM

dwert 2009-11-06 10:57:31
com组件里的函数原型,参数列表中有一个函数类型是:VARIANT ,请问,我C#该怎么样传参数进去?
我用object往里传了,总是报这个错误:对 COM 组件的调用返回了错误 HRESULT E_FAIL。
...全文
117 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ztenv 2009-11-06
  • 打赏
  • 举报
回复
看看VARIANT是不是一个函数指针
braveheal 2009-11-06
  • 打赏
  • 举报
回复
试试这样子
byte[] obj= new byte[255];
然后 调用的时候,传的参数这样子写, ref obj[0]
即传此ARRAY的首地址
dwert 2009-11-06
  • 打赏
  • 举报
回复
还没有好的解决方法啊。。。。顶啊。。。。
  • 打赏
  • 举报
回复
http://www.diybl.com/course/3_program/c++/cppjs/20091021/179803.html
dwert 2009-11-06
  • 打赏
  • 举报
回复
我转换成dll了啊,参数也转换成btye[]了。我这个是ARM 视频播放器com,有谁能用c#调起来的,我传一份给他。我的QQ:642730170
yangyanli 2009-11-06
  • 打赏
  • 举报
回复
用 byte[] 肯定行,不过解析就麻烦了

既然是COM,转成NET DLL啊. tlbimp 然后添加引用,就很方便了
dwert 2009-11-06
  • 打赏
  • 举报
回复
不是,是指针的话,要ref object 是不?

110,524

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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