|
뮤텍스를 사용하는건 님이 사용하는 방법이 맞는거 같습니다.
p에 A,B프로그램에서 같이 사용하는 뮤텍스 이름이 들어있는거겠죠??
반드시 같은 이름이어야 하고요.
하지만 님이 원하는 서로 사용하지 않는 경우에만 파일을 사용한다면..
굳이 뮤텍스 같은 방법은 사용할 필요가 없을듯 한데요.
원래 뮤텍스는 쓰레드간의 제어를 위해 만들어진 것이니까요.
단지 화일 공유 목적이라면
파일 오픈할때 Shared옵션을 조정해서 사용하면
한쪽에서 사용하는동안 다른 프로그램에서 오픈할 수 없게 할 수 있으니까
같은 효과를 낼수 있을거 같습니다.
그럼.. 즐프하시길.. ^^
문정원 님이 쓰신 글 :
: 특정위치에 있는 파일을 공유하여 엑세스할때
: const char p[] = "c:\\test.txt";(공유파일)
:
: A, B 라는 프로그램에서 아래 코드처럼 사용하면 서로 공유파일에 접근하여
: 수정,삭제등이 가능한지요 (서로 사용안할때 사용)..
: 뮤텍스는 잘 몰라서.. 부탁합니다.
: ====================================================================
: HANDLE Mutex;
: if((Mutex = OpenMutex(MUTEX_ALL_ACCESS, false, p)) == NULL)
: {
: Mutex = CreateMutex(NULL, true, p);
: }
: else
: {
: WaitForSingleObject(Mutex, INFINITE);
: }
:
: FILE *fp = fopen(p, "rb");
: ...
: fclose(fp);
:
: ReleaseMutex(Mutex);
: ======================================================================
:
|