MFC에게 기본으로 제공하는 다이얼로그는 esc키를 누르면 다이얼로그가 종료가 됩니다. 편리할 수 도있지만 습관적으로 esc키를 누르는 사용자라면 불편한 프로그램이 될 수 있습니다. esc키를 눌렀을때 프로그램이 종료 되지 않기 위해서 PreTranslateMessage함수를 이용하면 됩니다. 

코드는 다이얼로그에 PreTranslateMessage를 추가해주면 됩니다. 


BOOL TestDlg::PreTranslateMessage(MSG* pMsg)
{

  if(pMsg->wParam == VK_RETURN || pMsg->wParam == VK_ESCAPE)
     return TRUE;

  return TestDlg::PreTranslateMessage(pMsg);

}