MFC 中 传入CString 和 从DLL中获取CString的时候只能获取到第一个字符

DLL中类的函数。voidClient::setMessage(UserInfouser){CStringtemp;temp.Format("%d,%d,%s",user... DLL中类的函数。
void Client::setMessage(UserInfo user)
{
CString temp;
temp.Format("%d,%d,%s",user.UserID,user.UserName,user.temp);
AfxMessageBox(temp);
}

int Client::GetMessage()
{
return rand();
}

BSTR Client::GetBStr()
{ CString temp="Hello World!";
BSTR b= temp.AllocSysString();
return b;
}
在调用setMessage的时候。传进来的user.temp(CString类型)只有一个字符
在调用GetMessage的时候。int类型是正常的。
在调用GetBStr的时候返回也只有一个字符。并且返回值改为CString的时候,返回得到的数据也只有一个字符。
求高手帮忙解决下。谢谢
展开
 我来答
爱上带翅膀的人
2013-05-08
知道答主
回答量:17
采纳率:0%
帮助的人:14.9万
展开全部
cstring类型不能向dll传递 请转换为char* 或lpctstr
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式