请看这段程序,为什么导致内存错误呢
添加一个 WM_CLOSE 消息,保存程序屏幕的大小、位置和状态
void CMainFrame::OnClose()
{
// TODO: Add your message handler code here and/or call default
// save state of control bars
SaveBarState("Control Bar States");
// save size of screen
WINDOWPLACEMENT wp;
GetWindowPlacement(&wp);
AfxGetApp()->WriteProfileBinary(SETTINGS_KEY,WINDOWPLACEMENT_KEY,(BYTE*)&wp,sizeof(WINDOWPLACEMENT));
CMDIFrameWnd::OnClose();
}
应用程序下一次运行时恢复它们,在InitInstance()用以下代码代替 ShowWindow()
UINT size;
WINDOWPLACEMENT *pWP=NULL;
if (GetProfileBinary(SETTINGS_KEY,WINDOWPLACEMENT_KEY,(BYTE **)pWP,&size))
{
pMainFrame->SetWindowPlacement(pWP);
delete []pWP;
}
else
{
pMainFrame->ShowWindow(m_nCmdShow);
}
怀疑的地方是 GetProfileBinary中第三个参数是不是正确,请高人指点