1

我的 C++ 代码中有一个char sendBuf[sizeof(double)*3 + 1];

我的 c# com 代码方法Multicast( byte[] message)将字节数组作为参数。

那么为什么调用 Multicast(sendBuf) 不抛出这个错误cannot convert parameter 1 from 'char [25]' to 'SAFEARRAY *'

ist a char array a byte array in c/c++

那么我该如何将此 char* 转换为 safearray 呢?

我试过

SAFEARRAYBOUND bound[1] = {25, 0};
SAFEARRAY * psa = SafeArrayCreate(VT_UI1, 1, bound);

for(int i = 0; i <25; i++){
SafeArrayPutElement(psa, &i, sendBuf[i]);   

cannot convert parameter 2 from 'int *' to 'LONG *'得到SafeArrayPutElement

4

1 回答 1

0

SAFEARRAY API 的文档

从...开始SafeArrayCreateVector

于 2012-03-13T15:05:38.463 回答