C#中向OCX中传递数组,过大的话,总出现内存读写问题
C#调用OCX,其中一个参数为一个50多万字节(将近0.5兆大小)的字节数组
C#中new一个50多万字节的数组,如果传递这个50多万字节的数组的话,会出现内存读写问题
如果传递少点,比如说2万个字节的话,就没问题
OCX中在这里出现问题的地方,就是一个C语言库的内存拷贝函数,memcpy
我不确定是不是因为字节过多导致这个问题,别处也没发现什么不对的地方
请问,会不会是因为字节过多导致的?
C#中代码
Byte[] lpBuf = new Byte[nBytes]; //nBytes=512356
WT_OCX.SetImage(nWidth, nHeight, nBitCount, ref lpBuf[0], 0x6000);
memcpy(global.imgInput.m_lpBuf, lpImage, global.imgInput.m_nLineLength * nHeight);\\一共要复制512356个字节