본문 바로가기

Delphi/간단하게

간단하게 파일 중복 실행 검사하기

function DuplicateCheck : Boolean;
var
  hHandle : THandle;
begin
  Result := False;

  hHandle := CreateFileMapping(
               $FFFFFFFF, //SharedMemory
               nil,
               PAGE_READWRITE,
               0,
               1024,
               PChar('중복검사에 사용될 고유이름')
             );
  //이름을 등록하면서 중복된 이름이 존재하는지를 통해 파일이 중복 실행인지 아닌지 검사합니다.

  if GetLastError = ERROR_ALREADY_EXISTS then
    CloseHandle(hHandle)
  else
    Result := True;
end;

프로그램이 실행될 때 함수를 호출하고 리턴값에 따라 중복실행을 허용할지 안 할지 선택하면 됩니다.

반응형