当前位置: 代码迷 >> Windows Mobile >> 麻烦分析如下代码,pData的数据不正确,不等于m_strData的值,为什么呀?解决方案
  详细解决方案

麻烦分析如下代码,pData的数据不正确,不等于m_strData的值,为什么呀?解决方案

热度:86   发布时间:2016-04-25 07:55:18.0
麻烦分析如下代码,pData的数据不正确,不等于m_strData的值,为什么呀?
GetDlgItemText(IDC_EDIT_INFORMATION,m_strData);

m_strData.Replace(_T( "\n "),_T( " "));
m_strData.Replace(_T( "\r "),_T( " "));
TCHAR   Data[3]   =   {0x01,0x10,0};
m_strData.Insert(0,Data);
const   BYTE*   pData   =   (BYTE*)(LPCTSTR)m_strData;

//在如下一个步骤,pData的数据传入如下函数不正确,不等于m_strData最后的值,为什么呀?
//难道是上面的类型转换数据有问题?
CQRDataParse   DataParse(pData,m_strData.GetLength());

------解决方案--------------------
pData 是byte,m_strData转化后是TCHAR应该是m_strData.GetLength()长度不够
试试m_strData.GetLength()*2
------解决方案--------------------
const BYTE* pData = (BYTE*)(LPCTSTR)m_strData;用WideCharToMultiByte试一试
  相关解决方案