现在程序有一个结构
struct ConnectInfo 
{
CString sHost;
CString sService;
CString sDataBase;
CString sUser;
CString sPsw;
UINT uType;
};
在对话框中声明一个对象
ConnectInfo m_pInfo;CDlg::OnbtnClick()
{
//进行赋值
m_pInfo.sHost = m_sHost;
m_pInfo.sService = m_sService;
//写入注册表
CWinApp * pApp = AfxGetApp();
ASSERT(pApp);
BOOL ret = pApp->WriteProfileBinary("XXX", "XX", (LPBYTE)&m_m_pInfo, sizeof(ConnectInfo));
ASSERT(ret);
}读取方式UINT uSize;
ConnectInfo * pInfo;
BOOL ret = AfxGetApp()->GetProfileBinary("XXX", "XX", (LPBYTE*)&pInfo, &uSize);
if (ret)
 CopyMemory(&m_pInfo, pInfo, uSize);m_pInfo的值与写入的不同且为乱码;
请高手指点应该怎样写才正确?