tnnd 网上搜了大半天,终于被我发现问题了。
原理大概和上文一样,就是内存被net回收之后,再次调用就出错了。解决方法:
问题解决了,需要在委托函数
public delegate int STREAM_DIRECT_READ_CALLBACK(uint channelNumber, byte[] DataBuf, uint Length, int FrameType, Form1 context);
的前面加上[UnmanagedFunctionPointer(CallingConvention.Cdecl)],请问愚翁这条语句是做什么用的,帮忙解释一下,多谢了!
参考文献:
http://www.80diy.com/home/20060928/10/5053763.html