Форум: "Начинающим";
Текущий архив: 2009.10.04;
Скачать: [xml.tar.bz2];
ВнизЕсли прога работает, то повторный запуск передает первой копии ин Найти похожие ветки
← →
Disa © (2009-08-03 08:28) [0]Не смог выразить тему в двух словах)
Суть вот в чем, если один экземпляр программы уже запущен, то повторная попытка открытия этой же программы должна, естейственно, не открываться (это я могу сделать) и (а вот это уже не могу :-) передавать какую-нибудь информации первому экземпляру.
Проще говоря, как у любого музыкально проигрывателя, когда открываешь мп3 файл, если проигрыватель уже запущен, то он начинает проигрывать новый мп3 файл, но не запускается еще раз.
Вот я очень хочу сделать то же самое.
← →
Сергей М. © (2009-08-03 08:46) [1]Приложение гуёвое или консольное ?
← →
brother © (2009-08-03 08:47) [2]послать окну первого приложения уникальное сообщение и в параметре передать все, что надо?
или проще:
начать восспроизведение, а старое приложение убить?
← →
brother © (2009-08-03 08:48) [3]> Приложение гуёвое или консольное ?
гуевое)
← →
Сергей М. © (2009-08-03 09:04) [4]
> brother © (03.08.09 08:48) [3]
А ты откуда знаешь ?)
← →
Disa © (2009-08-03 09:28) [5]
> А ты откуда знаешь ?)
Да, кстати, хороший вопрос? :)
Не такое уж он оно и гуёвое... что вы сразу обзываетесь)
Обычное такое приложение Win32 с формой и кнопочками.
> послать окну первого приложения уникальное сообщение и в
> параметре передать все, что надо
Вот об этом поподробнее, пожалуйста.
← →
Сергей М. © (2009-08-03 09:36) [6]
> Не такое уж он оно и гуёвое... что вы сразу обзываетесь)
> Обычное такое приложение Win32 с формой и кнопочками
Ну как же оно не гуёвое ? Самое что ни на есть гуёвое)
GUI ("гуй") = Graphic User Interface = Графический Интерфейс Пользователя
← →
Anatoly Podgoretsky © (2009-08-03 11:16) [7]> Disa (03.08.2009 09:28:05) [5]
А ты все буквы выговариваешь?
← →
Amoeba © (2009-08-03 14:45) [8]Статья по теме вопроса:
Обобщающий пример работы с WinAPI №3 – Ассоциированные файлы и предотвращение запуска второй копии приложения
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=904
← →
Плохиш © (2009-08-03 15:47) [9]
> Disa © (03.08.09 09:28) [5]
>
>
на, радуйся
var
FHandle: THandle;
FBuffer: Pointer;
FAppHnd: HWND;
begin
FHandle := CreateFileMapping($FFFFFFFF, nil, PAGE_READWRITE, 0,
4, "BacCoolConfig");
FBuffer := MapViewOfFile(FHandle, FILE_MAP_WRITE, 0, 0, 4);
If HWND(FBuffer^) = 0 then
begin
HWND(FBuffer^) := Application.Handle;
Application.Initialize;
Application.CreateForm(TfrmMain, frmMain);
Application.Run;
end
else
begin
FAppHnd := HWND(FBuffer^);
Windows.SetForegroundWindow(FAppHnd);
Windows.PostMessage(FAppHnd, msgFileRefresh, 0, 0);
end;
UnmapViewOfFile(FBuffer);
CloseHandle(FHandle);
end.
← →
brother © (2009-08-04 04:11) [10]> А ты откуда знаешь ?)
в начинающих мой телепатор подсказал ;)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.10.04;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c