当前位置: 代码迷 >> C# >> C#调用C++的DLL出现 尝试读取或写入受保护的内存
  详细解决方案

C#调用C++的DLL出现 尝试读取或写入受保护的内存

热度:80   发布时间:2016-05-05 04:17:34.0
C#调用C++的DLL出现 尝试读取或写入受保护的内存 求救
C++函数
__stdcall FUNCTIONA(CString ab,byte *ad);

c#
int32 FUNCTIONA(String ab,ref Byte[] ad);

调用的时候出现“尝试读取或写入受保护的内存”
请问该如何解决

------解决思路----------------------
C++的 byte* 应用对C#  的StringBuider 

int32 FUNCTIONA(String ab,StringBuider  ad);
应用
------解决思路----------------------
CString 这不个知怎么转,
byte *ad 这个转byte[]是没问题的(不用ref),不过你得先给他分配一个空间
------解决思路----------------------
http://bbs.csdn.net/topics/390542838?page=1
------解决思路----------------------
也许可以写个api,传入通用字符串再返回个CString,这样以后调用CString参数的api就没问题了,楼主加我Q吧157348532
  相关解决方案