프로그램이 두번 열리는 것을 방지하는 것이다.
프로그램을 실행 시키고나서, 의도적이든 실수든 또 실행 시킬 수 있다.
여러 프로그램을 동시에 돌리듯, 한 프로그램을 여러개를 동시에 실행하는 것이다.
그것을 막기 위한 방법이다.
고유 문자열의 뮤텍스를 생성시킨다. 그리고 뮤텍스가 생성되면 false를, 중복이 되면 ERROR_ALREADY_EXISTS 에러가 뜨는데 이 에러가 나면 true를 return한다.
아래의 코드로 넘어가서 윈도우즈 창이 생성되게 된다.
즉, 하나만 실행이 된다.
프로그램을 실행 시키고나서, 의도적이든 실수든 또 실행 시킬 수 있다.
여러 프로그램을 동시에 돌리듯, 한 프로그램을 여러개를 동시에 실행하는 것이다.
그것을 막기 위한 방법이다.
아래와 같은 함수를 사용할 것이다.
(함수 선언)
함수 내용은 다음과 같다.
(mutex)
고유 문자열의 뮤텍스를 생성시킨다. 그리고 뮤텍스가 생성되면 false를, 중복이 되면 ERROR_ALREADY_EXISTS 에러가 뜨는데 이 에러가 나면 true를 return한다.
윈도우즈 창을 생성하기 전에 아래와 같은 코드를 추가하면 된다.
(중복 체크)
아래의 코드로 넘어가서 윈도우즈 창이 생성되게 된다.
컴파일 후 실행해본다.
(실행)
즉, 하나만 실행이 된다.
(*참조 - 2D 게임프로그래밍, 찰스 켈리)
'Programing > Windows' 카테고리의 다른 글
(Windows Programing) 키보드 입력 및 표시 (0) | 2018.01.19 |
---|---|
(Windows Programing) #define WIN32_LEAN_AND_MEAN (0) | 2018.01.18 |
(Windows Programing) Window 창 만들기 (0) | 2018.01.18 |