我用vc写了一个com控件,比如
test([in]long i, [out,retval] BYTE* buffer)我在vc中写程序调用
unsigned char tt[10];
long j = 10;
tt = test(j);这样不行unsigned char *pp;
pp = new unsigned char [10];pp = test(j);memcpy(pp, test(j), 10);都提示出错不知如何调用,请高手指点
test([in]long i, [out,retval] BYTE* buffer)我在vc中写程序调用
unsigned char tt[10];
long j = 10;
tt = test(j);这样不行unsigned char *pp;
pp = new unsigned char [10];pp = test(j);memcpy(pp, test(j), 10);都提示出错不知如何调用,请高手指点
test(i, &tt);
delete tt;(或者CoTaskMemFree之类 看你接口实现怎样分配的,按道理应该CoTaskMemAlloc,但是实际上很多都没有这样)
BYTE* buffer是一个返回值类型,所以在外面调用com组件的时候这个函数会提示只有一个传入的参数,我主要不知道怎么取得那个返回值
long j = 10;
tt = test(j);
tt[10]的最大是9好不好?
test([in]long i, [out,retval] BYTE* buffer) 改成
test([in]long i,byte* fuck ,[out,retval] BYTE buffer)
char xx[100];
char x[1];
x=test(10,xx);