반응형
프로그램 중복방지에는 여러가지 방법이 있다.
아래의 링크를 참조
그리고 명심해야할 것은 메인 다이얼로그 창 생성 전에 프로그램 실행확인 루틴이 먼저 와야한다는 것
CWnd* pWnd = NULL;
pWnd = CWnd::FindWindow(NULL,_T("프로그램 메인다이얼로그 창 이름"));
if (pWnd)
{
pWnd->ShowWindow(SW_SHOW);
pWnd->SetForegroundWindow();
return FALSE;
}
else
{
::GetClassInfo(AfxGetInstanceHandle(), "#32770", &wc);
wc.lpszClassName = "프로그램 메인다이얼로그 창 이름";
AfxRegisterClass(&wc);
}
<<-- 이 전에 중복 확인 루틴 넣기
CxxxDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: 여기에 대화 상자가 확인을 눌러 없어지는 경우 처리할
// 코드를 배치합니다.
}
else if (nResponse == IDCANCEL)
{
// TODO: 여기에 대화 상자가 취소를 눌러 없어지는 경우 처리할
// 코드를 배치합니다.
}
반응형
'C & C++ > MFC 컨트롤' 카테고리의 다른 글
[Dialog] 대화상자 실행방법 (0) | 2011.02.11 |
---|---|
[Dialog] Modeless Dialog(모달리스/모델리스 대화상자) (0) | 2011.02.11 |
[Dialog] 모달리스 다이얼로그의 메모리 해제 (0) | 2011.01.26 |
[Event] 여러개의 파일을 선택 (0) | 2011.01.12 |
[Dialog] 공용 대화상자 (Common Dialog) 사용법 (0) | 2011.01.12 |
댓글