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

Вниз

Проблема с FundWindow   Найти похожие ветки 

 
BUKA   (2003-09-06 15:56) [0]

Вот в одной из хороших книжек даны рекомендации по защите от повторного запуска программы (код вносится в файл проекта), привожу дословно:

program Sprav;

uses
Forms,
Windows,//не забудьте подключить этот модуль
S_Unit1 in "S_Unit1.pas" {Probe};

{$R *.res}

begin
Application.Initialize;
//Если окно существует, то завершить приложение
if Windows.FindWindow ("TProbe","Probe")<>0 then Application.Terminate;
Application.CreateForm(TProbe, Probe);
Application.Run;
end.

И ... не работает, т.е. программа запускается и 2-1 и 3-й раз!
Нельзя сказать, что команда "пропускает" или не видит код. Если меняешь "<>" на "=", то - "выплевывает" мгновенно. У кого будет мнение на сей счет?


 
NikB   (2003-09-06 17:29) [1]

A nelzia li stavit "else begin ... end":
if Windows.FindWindow ("TProbe","Probe")<>0 then Application.Terminate else begin
...
end;
?


 
BUKA   (2003-09-06 18:36) [2]

Не знаю попробую, но книжка А.Хомоненко "Delphi 7" на 1200 стр. рекомендует как один из 2-х способов именно такой.Меня что "засмущало": ведь программа "видит" код (я привел пример реакции при замене "<>" на "="), но значит даже при включенном приложении (открытой форме Probe) выдает 0!т.е., прошу прощения за тавтологию - не "видит"? И вот такие "мелочи" практически везде, в том числе и с отображением текста в DBD, книжка ничего нового, что не посоветовали Мастера не предлагает.


 
Song   (2003-09-06 21:59) [3]

http://pascal.sources.ru/cgi-bin/forum/YaBB.cgi?board=delphi;action=display;num=1037272197


 
panov   (2003-09-06 23:41) [4]

function isRunning(aUniqueString:String): Boolean;
var
hMutex: THandle;
begin
Result := False;
hMutex := CreateMutex(nil,False,PChar(aUniqueString));
if GetLastError = ERROR_ALREADY_EXISTS then
begin
Result := True;
CloseHandle(hMutex);
end;
end;



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

Форум: "WinAPI";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.029 c
11-41117
alex_s
2003-02-13 16:39
2003.11.13
LSP


4-42252
Вован
2003-09-15 17:32
2003.11.13
Как заставить свою прогу закрыться при shutdown e Windows?


14-42036
*pavel
2003-10-16 09:29
2003.11.13
Лечение Novell


3-40993
maxic777
2003-10-16 15:24
2003.11.13
Interbase


14-41963
jack128
2003-10-20 09:51
2003.11.13
Отмазка от армии :-))





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский