16,473
社区成员
发帖
与我相关
我的任务
分享
DLL导出的函数,如果不是同一个编译器尽量用基本的数据类型,比如char*,WCHAR*等,CString,string每个编译器实现是不一样的!那么他们的内存结构就不一样,崩溃是早晚的事情
VC6做的DLL, 如果不能修改DLL, 那可以试试把工程用VC6编译, 一般相同版本的编译器编译的相互间的兼容性会比较好
或者VC6再做一个DLL 重新封装下原来的DLL
sVersion=Versionch;
DLL导出的函数,如果不是同一个编译器尽量用基本的数据类型,比如char*,WCHAR*等,CString,string每个编译器实现是不一样的!那么他们的内存结构就不一样,崩溃是早晚的事情
CString的内存空间是预分配的,如果空间不够,会重新分配内存空间。既然version的大小已定,sVersion在传入前是不是可以指定下大小呢。