ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Что я делаю нетак?
  #1  
Старый 08.12.2008, 19:48
th13fnano
Новичок
Регистрация: 08.12.2008
Сообщений: 8
Провел на форуме:
4529

Репутация: 1
Arrow Что я делаю нетак?

Хочу организовать метод doublerun на делфи. Суть такова - один процесс следит запущен ли другой а другой следит за первым. Если один из них умерает другой запускает его опять. Уже делал раз такое - работало наура. Сорцы потеряны. Вот собственно код, непойму почему неработает.

Код:
{$APPTYPE CONSOLE}
program test;

uses
	SysUtils, Windows, Shellapi;
const
	mutex1 :string = 'ABDCDBEFBDEBFAB';
	mutex2 :string = 'EFDACBDFEABDCDF';
Begin
	if (OpenMutex(MUTEX_ALL_ACCESS, false, Pchar(mutex1)) = 0) then
	Begin
		CreateMutex(nil, false, Pchar(mutex1));
		Writeln(mutex1);
	End else Begin
		if (OpenMutex(MUTEX_ALL_ACCESS, false, Pchar(mutex2)) = 0) then Begin
			CreateMutex(nil, false, Pchar(mutex2));
			Writeln(mutex2);
		End
	End;
	while true do begin
		sleep(1000);
		writeln(OpenMutex(MUTEX_ALL_ACCESS, false, Pchar(mutex1)));
		writeln(OpenMutex(MUTEX_ALL_ACCESS, false, Pchar(mutex2)));
		if (OpenMutex(MUTEX_ALL_ACCESS, false, Pchar(mutex1)) > 0) and
		(OpenMutex(MUTEX_ALL_ACCESS, false, Pchar(mutex2)) > 0) Then
		Begin
		end else Begin
			Shellapi.ShellExecute(0,'open',pchar(Paramstr(0)),'','',1);
			sleep(10);
		End;
	end;
End.
 
Ответить с цитированием

  #2  
Старый 08.12.2008, 19:50
th13fnano
Новичок
Регистрация: 08.12.2008
Сообщений: 8
Провел на форуме:
4529

Репутация: 1
По умолчанию

Кто поможет написать?
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ