[MFC] 다이얼로그 중복 실행 방지
본문 바로가기

응용 프로그램 개발/C++, MFC, Windows

[MFC] 다이얼로그 중복 실행 방지

728x90
반응형

어플리케이션 클래스의 InitInstance()에 다음과 같은 코드를 추가한다.

이때, 다이얼로그를 여는 등의 액션이 일어나기 전인 부분에 추가해야한다.

 

BOOL CTestApp::InitInstance()
{
	
	// 중복 실행 방지	
	BOOL bIsDuplicateWindow = FALSE;
	m_hMutex = ::CreateMutex(NULL, FALSE, _T("mtx"));	

	if (GetLastError() == ERROR_ALREADY_EXISTS)	bIsDuplicateWindow = TRUE;
	if (m_hMutex)					::ReleaseMutex(m_hMutex);

	if (bIsDuplicateWindow)
	{
		AfxMessageBox(L"프로그램이 이미 실행 중입니다.");
		return FALSE;
	}
    
}

 

참고: www.poshy.net/54920

728x90
반응형