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

Вниз

Параметр   Найти похожие ветки 

 
CA   (2002-06-30 12:57) [0]

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


 
Cobalt   (2002-06-30 13:12) [1]

поищи в факе на тему "запрет второго запуска моей проги"


 
stupid   (2002-06-30 13:58) [2]

Помести в обработчик события OnCreate формы следующий код:

procedure TForm1.FormCreate(Sender: TObject);
var
h : hWnd;
buff : ARRAY[0.. 127] OF Char;
begin
h := GetWindow(Handle, gw_HWndFirst);
while h <> 0 do
begin
if (h <> Application.Handle) AND (GetWindow(h, gw_Owner) = 0) then
begin GetWindowText (h, buff, sizeof (buff ));
if StrPas (buff) = Application.Title then
begin
SetForegroundWindow(h);
ShowWindow(h,SW_SHOWNORMAL);
Halt;
end;
end;
h := GetWindow(h, gw_hWndNext);
end;
end;


А дальше уже сам думай, как всё, чё ты хош реализовать!
Код 100% корректно работает.


 
Юрий Зотов   (2002-06-30 18:19) [3]

> Код 100% корректно работает.

Это вряд ли.
:о)

Запустите свою программу дважды - либо ОЧЕНЬ быстрыми щелчками мыши, либо из другой программы (например, дважды подряд вызвав WinExec). Полагаю, будете удивлены.

А удивительного ничего нет. Потому что, если запуск второго экземпляра происходит ДО ТОГО, как в первом создано окно, то проверка не сработает. И второй экземпляр спокойно запустится.

Кажется, на эту тему на сайте была статья.


 
Юрий Зотов   (2002-06-30 18:22) [4]

Забыл о главном.

Автору вопроса - см. здесь:
http://www.delphikingdom.com/helloworld/samples_win.htm


 
Са   (2002-07-02 04:46) [5]

Ну Спасибо Мужики !!!



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

Форум: "Основная";
Текущий архив: 2002.07.15;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.013 c
3-47133
sniknik
2002-06-20 16:53
2002.07.15
Глюк в Halcyon? Составной индекс.


3-47112
volph
2002-06-21 10:51
2002.07.15
ADOQuery1.Parameters.AddParameter


3-47111
Oleon
2002-06-21 17:17
2002.07.15
Как в процедуре вставить много записей в таблицу?


3-47114
Lola
2002-06-21 15:14
2002.07.15
Упаковка mdb-базы


1-47479
Alex_E
2002-07-03 18:16
2002.07.15
Удаление с панели задач лишних окон





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