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

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분
[허성세월] 감사합니다
[손님]

... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
4878heyhey8/25/20173313프로세스의 프로세스 찾기(?) [2]
4877강준8/24/20172775SQLite journal_mode=wal 관련하여 질문드립니다. [1]
4876heyhey8/23/20173122프로세스 초기화하기 [1]
4874ho8/22/20173295파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4875ho8/23/20173185    답변글 [답변]: 파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4873kmi8/21/20173908전역 변수를 쓰지 않고 여러 군데에서 같은 변수를 공용하는 방법이 궁금합니다. [4]
4872abcd8/18/20173330프로세스를 초기화 하는 명령어도 있나요? [1]
4871kmi8/17/20173923메모리 부족으로 종료되는 현상의 여러가지 이유가 무엇인지 궁금합니다. [2]
4870heyhey8/14/20173542프로그램 실행시 중복일 때 버튼 색깔 원래대로 돌리기 [1]
4868kmi8/4/20173133string[] 에 Reverse 적용방법 질문해봅니다 [3]
4867heyhey8/4/20173034EventHandler에 관한 [1]
486610년차8/3/20173065dsoframer axframer open시 기존 오픈되어있는 엑셀을 먹어버리는 현상 [1]
4865heyhey7/31/20173729클릭원스로 배포 한 프로젝트가 끝났는지 알 수 있는 방법 [8]
4864초보자7/28/20173327DllIImport질문 드립니다. [1]
4863다연아빠7/23/20173045전역 예외처리에 대해 질문있습니다. [3]
4861라르크7/17/20174708window form 예제 따라하는 중인데 12.3 서비스 응용 프로그램에서 진행이 안됩니다. [3]파일 다운로드1
4859heyhey7/10/20172950다른 환경에서 실행하기 [1]
4858heyhey7/10/20173621Clickonce update에 관한질문입니다. [1]
4857heyhey7/7/20173691제가 여태까지 작성한 보고서입니다. [2]파일 다운로드1
4856heyhey7/6/20173190성태님 다른질문입니다. [4]
4855JP7/6/20173316Dispose 패턴 구현시 Finalize 재정의에 대한 질문드립니다. [2]
4854heyhey7/6/20172849
4853heyhey7/5/20173459성태님이 작성한대로 해봤습니다. [1]파일 다운로드1
4852김레오7/4/20174210서드파티 dll 디버깅에 대해 질문드립니다. [2]
4851김현준7/3/20173961Datagridview VirtualMode 시 GC가 계속 호출되는 현상이 이해가 안갑니다. [2]
4850heyhey7/3/20173804성태님 밑에 질문드렸던 오류입니다. [1]파일 다운로드1
... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...