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

Вниз

Предотвращение повторного запуска программы   Найти похожие ветки 

 
NetKnight ©   (2003-03-24 09:45) [0]

Была у меня сабжевая документа, но куда-то я её потерял, кто-нить даст линку ?


 
RoadStar ©   (2003-03-24 09:53) [1]

Попробуй:

Unic:=CreateFileMapping($FFFFFFFF,nil,PAGE_READONLY,0,32,"WWW");
if unic = 0 then
begin
MessageDLG("Ошибка распределения памяти!",mtError,[mbOK],0);
halt;
end
else if GetLastError = ERROR_ALREADY_EXISTS then
begin
Window := FindWindow("имя класса твоей формы", nil);
SwitchToThisWindow(Window, 0);
halt;
end;


 
KDS ©   (2003-03-24 10:59) [2]

В модуле проекта впиши то что меж звёзд
В переменную WinCap помести заголовок (Caption) главной формы

var AppH:THandle;
WinCap:Ansistring;
begin
Application.Initialize;
Application.Title := "Моя прога";
*************************
WinCap:="Донецк"+" ["+GetPCName+"]";
AppH:=FindWindow("TEngineMF",PChar(WinCap));
if AppH>0 then begin
MessageBeep(MB_ICONASTERISK);
MessageBox(Application.Handle, "Программа уже запущена. Переходим к ней","Внимание",$41030);
ShowWindow(AppH,SW_MAXIMIZE);
SetForegroundWindow(AppH);
exit;
end;
*****************
Application.CreateForm(TEngineDM, EngineDM);



 
Intell ©   (2003-03-24 11:09) [3]

В модуле проекта

program Project1;

uses
windows,
Forms,
Unit1 in "Unit1.pas" {Form1};

{$R *.res}

const
AtStr="MyProgram";

function CheckThis : boolean ;

var
Atom: THandle;
begin
Atom:= GlobalFindAtom(AtStr);
Result:= Atom <> 0;
if not result
then GlobalAddAtom(AtStr);
end;

begin
if not CheckThis
then begin
Application.Initialize;
Application.Title := "Start";
Application.CreateForm(TForm1, Form1);
Application.Run;
GlobalDeleteAtom(GlobalFindAtom(AtStr)); // !!!
end
else begin
MessageBox(0,"Autorun уже зарегестрирован в системе! Если он не загружен, а сообщение появляется, тогда произошёл сбой в памяти Windows.",0);
end;
end.

Я думаю разберёшься.

sergein@nojabrsk.ru


 
NetKnight ©   (2003-03-24 14:23) [4]

Спасибо, попробую.. :)



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
8-6614
ReYken
2002-12-27 13:11
2003.04.03
Может я и повторяюсь... он ответа я не нашел. Хоть и видел.


9-6284
sany
2002-10-25 01:05
2003.04.03
разгоняться тормозить


6-6646
glh
2003-02-11 19:38
2003.04.03
Interprocess communication - IPC


14-6729
NMax
2003-03-16 15:12
2003.04.03
Поиск


3-6303
VL
2003-03-14 13:00
2003.04.03
про DBGrid