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

Вниз

Как узнать что программа (модуль из DLL) уже запущена   Найти похожие ветки 

 
VS2001   (2002-04-30 05:56) [0]

Как можно узнать, что программа уже запущена и если запущена, то переключиться на нее, при этом учесть, если программа свернута - то развернуть.
p.s.: Программа - форма из модуля DLL.


 
gek   (2002-04-30 07:20) [1]

Может просто форму найти?
Если так, то использовать FindWindow.


 
Dy-Ty   (2002-04-30 09:38) [2]

ищешь форму с помощью FindWindow (как тебе уже правильно сказали), а далее используешь функцию IsIconic


 
VS2001   (2002-05-03 09:03) [3]

А поточнее (с исходником) не могли бы, пожалуйста!!!


 
Севостьянов Игорь   (2002-05-07 11:48) [4]

Например так
---------------
procedure IsApplicationRunning;
var
hWnd: THandle;
begin
hWnd := FindCurrentWindow;
SendMessage(hWnd, WM_SETFOCUS, hWnd, 0);
if IsIconic(hWnd) then
ShowWindow(hWnd, SW_RESTORE)
else
ShowWindow(hWnd, SW_SHOWNORMAL);
SetForegroundWindow(hWnd);
//Halt(0);
end;
---------------
Application.Title == "Имя искомого окна"
---------------
function FindCurrentWindow: THandle;
var
CurrentClassName,
ClassName,
AppTitle: array [0..255] of Char;

begin
GetClassName(Application.Handle, ClassName, SizeOf(ClassName));
Result := GetWindow(Application.Handle, gw_hWndFirst);
While Result <> 0 do
begin
if (Result <> Application.Handle) and (GetWindow(Application.Handle, gw_Owner) = 0)
then
begin
GetClassName(Result, CurrentClassName, SizeOf(CurrentClassName));
FillChar(AppTitle, SizeOf(AppTitle), #0);
GetWindowText(Result, AppTitle, Length(Application.Title)+1);
if (StrComp(CurrentClassName, ClassName) = 0) and
(StrComp(PChar(Application.Title), AppTitle) = 0) then
Exit;
end;
Result := GetWindow(Result, gw_hWndNext);
end;
end;
---------------

но если все же это твое приложение (не другая программа, а написанная тобой и хочешь проверять работает она или нет), то используй Mutex хотя бы ...
Вопросы по мылу



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

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

Наверх





Память: 0.46 MB
Время: 0.006 c
14-64775
vic_vm
2002-04-08 14:49
2002.05.20
Кто нибудь видел где-нибудь переводчик с японского


1-64653
RaZEr (zabil_parol)
2002-05-08 20:43
2002.05.20
TPageControl : TTabSheet , как создать ?


3-64522
Пикулев Евгений
2002-04-23 07:45
2002.05.20
Как с помощью SQL отсортировать выходное значение таблицы


3-64534
user_Jack
2002-04-23 17:42
2002.05.20
Как избежать абракадабры.


6-64772
ATLANTIDO
2002-03-01 00:38
2002.05.20
УПРАВЛЕНИЕ Internet Explorero м





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