Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.26;
Скачать: CL | DM;

Вниз

Mutex handle   Найти похожие ветки 

 
Pashkerton   (2004-09-09 14:14) [0]

Добрый день, и непосредственно к делу.
Есть Form и на ней Edit и 2 кнопки. При создании формы создаётся Mutex "MyMytex" и в Edit выводится его Handle.

Button1Click
Mutex := CreateMutex(nil, False, "MyMutex");
 if Mutex = 0 then
   MessageBox(0,"Can not create", "error",MB_OK or MB_ICONSTOP)
 else if GetLastError = ERROR_ALREADY_EXISTS then
   MessageBox(0,"Already exist", "error",
     MB_OK or MB_ICONSTOP);
edit.Text:=IntToStr(Mutex);

Button2Click
CloseHandle(Mutex)

Если я сначала нажму на Button2 а потом на Button1, то в Edit будет тот же handle что и был.
Если сразу нажму на Button1, то появляется сообщение "Already exist", но в Edit теперь совсем другой Handle. Вопрос почему другой handle?


 
Ega23 ©   (2004-09-09 14:17) [1]

А ты на хэндл не смотри, он какой угодно может быть. Это как системе вздумается, такой индекс она тебе и присвоит.


 
Poirot ©   (2004-09-09 14:18) [2]

Я наверное уже старею.. что значит какой и был.. а какой был?!?!?! Мусор?!!!
Поточнее пожалуйста:)) 4ак то воспроизводить вашуц проблему не хоца:))


 
Digitman ©   (2004-09-09 14:22) [3]


> Если я сначала нажму на Button2 а потом на Button1, то в
> Edit будет тот же handle что и был


был ? а откуда он взялся-то ДО этого ?
создание мьютекса у тебя - по кнопке1, а ты после старта сначала кнопку2 давишь, и только потом кнопку1 ..

??


 
Pashkerton   (2004-09-09 14:28) [4]

(ОТСЮДА)При создании формы(onCreate) создаётся Mutex "MyMytex" и в Edit выводится его Handle. И при нажатии на кнопку я пытаюсь создать с таким же идентификатором, т.е. "MyMytex".


 
Ega23 ©   (2004-09-09 14:32) [5]


 hnd:=CreateMutex(nil, false, PChar(ss) );
 if GetLastError = ERROR_ALREADY_EXISTS then
 begin
  Beep(100,200); //MessageBeep ->in WinProcs
  bo:=ReleaseMutex(hnd);
  Halt(1);
 end;



Страницы: 1 вся ветка

Текущий архив: 2004.09.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.053 c
3-1093534913
a3a3ello
2004-08-26 19:41
2004.09.26
Запрос SQL


3-1093863664
Aleksandr.
2004-08-30 15:01
2004.09.26
Можно ли как-то в RT бороться с Directory is busy?


3-1093790798
Andrey V.
2004-08-29 18:46
2004.09.26
Locate в TDbf (кодировка?)


1-1094633983
Koala
2004-09-08 12:59
2004.09.26
Удаление файла


14-1094213765
}|{yk
2004-09-03 16:16
2004.09.26
Не мог бы кто проконсультировать...