Q&A

  • CreateMutex(nil, True, 'YourMutex');에서
CreateMutex(nil, True, 'YourMutex');에서 'YourMutex'에는 어떠한 내용의 이름을 표기하는지요

4  COMMENTS
  • Profile
    최용일 2000.09.19 23:10
    안녕하세요. 최용일입니다.



    헐~ 그냥 짓고 싶은 고유한 이름을 넣어주세요. 프로그래머맘대루...



    ^^ 항상 즐코하세요.



    pmyun wrote:

    > CreateMutex(nil, True, 'YourMutex');에서 'YourMutex'에는 어떠한 내용의 이름을 표기하는지요

  • Profile
    pmyun 2000.09.20 02:40
    왜 처리가 안되고 여러번 실행이 되는지 모르겠어요 소스를 올려 볼께요

    program Pro_Code6;



    uses

    Forms,Windows,

    Unit_Code6 in 'Unit_Code6.pas' {Form_Code6},

    .

    .

    . ;



    var Mutex : THandle;

    {$R *.RES}

    begin

    Mutex := CreateMutex(nil, True, 'NoDuplicate');



    Application.Initialize;

    // parameter값 체크

    if ParamStr(1) <> 'a' then

    begin

    Application.CreateForm(TForm_Code6, Form_Code6);

    Form_Code6.Release;

    Exit;

    end

    else

    begin

    Application.CreateForm(TForm_Code6, Form_Code6);

    Application.Run;

    if Mutex <> 0 then CloseHandle(Mutex);

    end;

    end.



  • Profile
    최용일 2000.09.20 03:50
    헐헐헐~~~



    뮤텍스를 생성하고 제거만 하면 뭐합니까??? 그걸 이용을 해야죠...



    Mutex := CreateMutex(nil, True, 'NoDuplicate');

    if (Mutex <> 0 ) and (GetLastError = 0) then

    begin

    if ParamStr(1) = 'a' then

    begin

    Application.Initialize;

    Application.CreateForm(TForm_Code6, Form_Code6);

    Application.Run;

    end;

    if Mutex <> 0 then CloseHandle(Mutex);

    end;



    pmyun wrote:

    > 왜 처리가 안되고 여러번 실행이 되는지 모르겠어요 소스를 올려 볼께요

    > program Pro_Code6;

    >

    > uses

    > Forms,Windows,

    > Unit_Code6 in 'Unit_Code6.pas' {Form_Code6},

    > .

    > .

    > . ;

    >

    > var Mutex : THandle;

    > {$R *.RES}

    > begin

    > Mutex := CreateMutex(nil, True, 'NoDuplicate');

    >

    > Application.Initialize;

    > // parameter값 체크

    > if ParamStr(1) <> 'a' then

    > begin

    > Application.CreateForm(TForm_Code6, Form_Code6);

    > Form_Code6.Release;

    > Exit;

    > end

    > else

    > begin

    > Application.CreateForm(TForm_Code6, Form_Code6);

    > Application.Run;

    > if Mutex <> 0 then CloseHandle(Mutex);

    > end;

    > end.

    >

  • Profile
    pmyun 2000.09.20 19:37
    잘 되네요 한가지 더 질문해도 될런지...



    어제 질문한 문장에 중복체크를 하고 먼저 실행된 프로그램을 활성화 시킬 방법은 없는지요