일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 옥션소송
- holdem
- 게임 개발
- 고스톱
- 윈윈
- 윈윈전략
- 영어단어
- 카일레라서버
- 홀뎀
- 써치아이
- 보드게임
- 판매
- 티스토리 초대장
- 프로그램 외주
- 게임 외주
- MAME
- 상호링크
- 맞고
- 서치아이
- 틀린그림 찾기
- 포커
- 카일레라
- 영어단어게임
- 옥션해킹
- 틀린그림찾기
- 온라인게임
- 프로그램 개발
- Mame32
- 포커게임
- 맞고게임
- Today
- Total
kyuseo의 게임 프로그래밍
뮤텍스(Mutex)를 이용하여 하나의 프로그램(게임)만 실행하는 소스코드 본문
개요.. |
게임과 같은 경우 하나의 컴퓨터에서 하나의 프로그램만 실행시키기를 원하는 경우가 많습니다.
뮤텍스(Mutex)를 이용하여 하나의 프로그램(게임)만 실행하는 소스코드와 방법을 설명드립니다.
방법 |
아래와 같이 작업하고 추가로 다음과 같은 코드를 추가하여야 리소스 누출을 방지할 수 있습니다.
1.
CAppApp::CAppApp() { m_hMutex = NULL; }
|
2.
BOOL CAppApp::InitInstance() { // 프로그램중복실행을막기위한뮤텍스생성 m_hMutex = CreateMutex( NULL,TRUE, "SEARCH_EYEONLlNE_2_RWEHO_FWEO_GWEOG_MUTEX"); if( m_hMutex && GetLastError() == ERROR_ALREADY_EXISTS ) { ReleaseMutex( m_hMutex ); CloseHandle( m_hMutex ); m_hMutex = NULL; return FALSE; } } |
3.
int CAppApp::ExitInstance() { if( m_hMutex != NULL ) { ReleaseMutex( m_hMutex ); CloseHandle( m_hMutex ); m_hMutex = NULL; } } |