Вниз
Скачать: CL | DM;

Запуск нескольких копий приложения средствами Delphi   Найти похожие ветки 

← →
Micke ©   (2003-07-11 08:30) [0]

Народ! Подскажите, как при помощи Delphi запустить несколько копий одной программы, которая проверяет двойной запуск и отрубает его. Может как-то имя процесса поменять или как? Короче плз с примерами.
Тока не надо в FAQ посылать. Я всё(!!!) облазил и ничего не нашёл. Срочно надо!


← →
Ozone ©   (2003-07-11 08:51) [1]

А зачем тебе, еще и из Delphi, запускать несколько копий?
Эээээто не сурьезно...


← →
Digitman ©   (2003-07-11 08:53) [2]


> при помощи Delphi


что означает "при помощи" ?


> проверяет двойной запуск и отрубает его


кого "его" ? приложение - оно, Делфи (среда) - она... кто же тогда "он" ?)


← →
Digitman ©   (2003-07-11 08:56) [3]

в смысле, очередное запущенное приложение, обнаружив уже работающую свою "копию", немедленно завершается (по твоей логике) ?


← →
MBo ©   (2003-07-11 09:11) [4]

>Я всё(!!!) облазил и ничего не нашёл
Не знаю, как уж ты искал...
http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988619824&n=15


← →
Е-Моё имя ©   (2003-07-11 09:12) [5]

я так понял, есть приложение с защитой от запуска второй копии, и эту защиту надо отключить..


← →
Edward   (2003-07-11 09:57) [6]

program Project1;

uses

Forms,
Windows,
Unit1 in "Unit1.pas" {Form1};

{$R *.RES}

var

hwnd: THandle;

begin

hwnd := FindWindow("TForm1", "Form1");
if hwnd = 0 then
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end
else
SetForegroundWindow(hwnd)
end.

В этом случае необходимо быть уверенным, что в системе больше нет окон с именем "TForm1", лучше всего что-нибудь осмысленное типа TMainSkladForm и т.п.



← →
лёха   (2003-07-11 10:16) [7]

Что за народ... Он всё понятно объяснил! Вот человек "Е-Моё имя" правильно всё понял (хоть кто-то). Знал бы помог, давольнотаки интересный вопрос ;) На самом деле не правя сам ехе я думаю вряд ли получится, ведь я могу зделать программу которая будет выделять память CreateFileMapping с каким-нибудь дурацким именем. Хотя может быть в программе используется бональный FindWindow это уже в конкретном случае смотреть надо.


← →
лёха   (2003-07-11 10:24) [8]

И ещё кстати можно например бонально создавать файл на диске или ключик в реесторе, и если они есть то не запускать вторую копию. А откуда ты знаешь как она проверяет на существование самой себя. Так что я думаю это не реально, хотя всё может быть :)


← →
Ozone ©   (2003-07-11 10:35) [9]

Все это делается ч/з мьютексы.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.013 c
1-77939
SergeyN
2003-07-09 18:39
2003.07.24
EOleSysError


6-78036
Nesterovsky
2003-05-18 09:49
2003.07.24
Как сохранить сообщения TIdMessage.


14-78140
Milz
2003-07-09 11:12
2003.07.24
Преобразование отдела АСУ в отдельную фирму


14-78141
IronHawk
2003-07-04 19:10
2003.07.24
Приветствую Мастеров! Кто-то пользовался ...ColorMap-aми?


1-77878
Sour
2003-07-10 10:45
2003.07.24
Изменение константы в прилложении без перекомпиляции???




   Наверх