Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.04.03;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
3-6353
Explorer
2003-03-14 09:47
2003.04.03
Oracle


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


1-6548
Ангелина
2003-03-21 14:13
2003.04.03
Вопрос


1-6606
Guru
2003-03-22 13:10
2003.04.03
Клиент/серверное приложение с авторизацией


14-6705
Softik
2003-03-15 16:35
2003.04.03
Подскажите аналог QReport, который быстрее и по функциональнее!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский