Microsoft MVP성태의 닷넷 이야기
중복실행 방지 관련 문의 [링크 복사], [링크+제목 복사]
조회: 4548
글쓴 사람
허송세월
홈페이지
첨부 파일
안녕하세요.

mutex를 이용하여 프로그램 중복실행 방지를 하였습니다.

해당 코드는 아래와 같습니다.

var mutex = new Mutex(true, $"{Process.GetCurrentProcess().ProcessName}|{command}", out var isNew);
if (isNew == false)
{
    Console.WriteLine($@"중복 실행");
    Environment.Exit(0);
}

일반적인 상황에서는 잘 작동합니다.

그러나 해당 exe 파일을 작업스케쥴러에 등록하여 사용하고 있습니다.
작업스케쥴러는 파워쉘 스크립트를 실행하고 파워쉘 스크립트에서 위의 코드가 적용되어 있는 exe파일을 실행합니다.


문제는 작업스케쥴러를 통해 실행된 exe와 유저가 실행한 exe파일이 중복실행이 되어버리네요..

이 증상의 원인을 아시는분 계시나요?








[최초 등록일: ]
[최종 수정일: 9/5/2019]


비밀번호

댓글 작성자
 



2019-09-05 11시31분
사용자마다 생성된 Mutex 이름 영역이 다르기 때문입니다. 다음의 글을 참고하세요.

커널 객체를 위한 null DACL 생성 방법
; http://www.sysnet.pe.kr/2/0/1749

정성태
2019-09-06 12시39분
[허성세월] 감사합니다
[손님]

1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5632김현수3/30/20221190Remote Desktop으로 접속시 WPF UI 가 다시 그려지는 이벤트를 막을 수 없을까요? [3]
5631김기헌3/24/20221119WPF 컨트롤의 그래픽 처리관련 질문드립니다 [2]파일 다운로드1
5630장성욱3/24/20221083로깅관련 질문입니다. [2]
5629감사...3/23/20221187함수에서 예외가 발생하면 try ~ catch처리기를 찾을 때 까지 상위 함수로 계속 올라가나요? [2]
5628홍길동3/23/20221210질문드립니다. [2]파일 다운로드1
5626연준혁3/21/20221203안녕하세요. [3]
5625ja...3/18/20221380c# 8.0 도서를 구입한 사람입니다. [1]
5624초보자3/17/20221126람다 캡처 관련 문의 [2]
5623한예지3/15/20221329인터프리터 원리가 궁금합니다. [4]
5622김민아3/8/20221338const와 readonly의 명확한 차이가 이게 맞나요? [2]
5621장성욱3/8/20221178c# 로그 관련 질문 [1]
5620김민아3/7/20221160안녕하세요 비관리 객체를 반환하는 메소드 호출 시 궁금한 점이 있어서 질문드립니다 [2]
5619팡팡이3/3/20221710RSA 문의드립니다. [3]
5618김기헌3/2/20221173안녕하세요 생성자 옆에 this 키워드를 붙여 생성자를 여러 개 호출 시 질문드립니다 [2]
5617Ed...2/25/20221158ArgumentOutOrRangeException에러 발생 [2]파일 다운로드1
5616cs...2/24/20221142readonly struct로 선언된 구조체를 특정 클래스에서 멤버변수로 가지는 경우 [1]
5615장성욱2/22/20221653SetThreadAffinityMask를 이용한 쓰레드 지정하는 방법에 대해 궁금합니다. [4]
5614민우2/22/20221551SSL 통신 문의 [6]
5613김인태2/22/20221205서버와 PC 간의 어플리케이션 성능 차이 [1]
5612팬입...2/20/20221038Kastrel 서버 관련 [1]
5611차가워2/19/20221159stopWatch 늘어짐 문의 [3]
5610차가워2/18/20221105Stopwatch 늘어짐 문제 [1]
5609cs...2/15/20221268c# 함수의 호출 방식에 대해 궁금합니다! [2]
5608지호2/10/20221371시작하세요 C# 8.0 중 제네릭타입의 IEnumerable [3]파일 다운로드1
5607이로운2/10/20221177안녕하세요. 궁금한게 있어서 질문드립니다. [1]
5605강성봉2/10/20221114TCP PSH flag 패킷 수신 에러 [1]
1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...