C# 生成COM组件,与C++交互问题

cyuyanxinshou 2013-06-09 12:44:28
我用C#生成COM组件,以供VC++调用。在C#的com组件中,有一个函数,需要输出一个字符串数组,传递给VC++;同样的,还需要一个函数,需要由VC++传递一个字符串数组,来供给C#的函数使用
请问C#生成的接口中,应该使用什么类型呢

VC++调用的时候,又应该用什么类型来接收。或者应该传递什么参数给COM
     public void GetTableStruct(ref string[]  DataKey, ref string[] DataType, ref string[] DataComment)
{
int count = myDataKey.Count;
DataKey = new string[count];
DataType = new string[count];
DataComment = new string[count];
for (int i = 0; i < count; i++)
{
DataKey[i] = myDataKey[i].ToString();
DataType[i] = myDataType[i].ToString();
DataComment[i] = myDataComment[i].ToString();
}
}

类似这样的,输出的三个参数,均为字符串数组。但是这样生成的com组件,不能够在C++中调用。调用会报错。
...全文
56 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cyuyanxinshou 2013-06-13
  • 打赏
  • 举报
回复
自己解决了,谢谢了
oyljerry 2013-06-09
  • 打赏
  • 举报
回复
SAFEARRAY来在两个语言之间

3,248

社区成员

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

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