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

归来>亦少年 2015-03-20 03:26:02
C++函数
__stdcall FUNCTIONA(CString ab,byte *ad);

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

调用的时候出现“尝试读取或写入受保护的内存”
请问该如何解决
...全文
159 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wy24789 2015-03-21
  • 打赏
  • 举报
回复
也许可以写个api,传入通用字符串再返回个CString,这样以后调用CString参数的api就没问题了,楼主加我Q吧157348532
zq1564171310 2015-03-20
  • 打赏
  • 举报
回复
http://bbs.csdn.net/topics/390542838?page=1
归来>亦少年 2015-03-20
  • 打赏
  • 举报
回复
引用 3 楼 WM_JAWIN 的回复:
CString 这不个知怎么转, byte *ad 这个转byte[]是没问题的(不用ref),不过你得先给他分配一个空间
谢谢WM_JAWIN的回复 请详谈 !
WM_JAWIN 2015-03-20
  • 打赏
  • 举报
回复
CString 这不个知怎么转, byte *ad 这个转byte[]是没问题的(不用ref),不过你得先给他分配一个空间
归来>亦少年 2015-03-20
  • 打赏
  • 举报
回复
引用 1 楼 wyd1520 的回复:
C++的 byte* 应用对C# 的StringBuider int32 FUNCTIONA(String ab,StringBuider ad); 应用
谢谢wyd1520的回复,请试了还是提示“尝试读取或写入受保护的内存”
本拉灯 2015-03-20
  • 打赏
  • 举报
回复
C++的 byte* 应用对C# 的StringBuider int32 FUNCTIONA(String ab,StringBuider ad); 应用

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧