Текущий архив: 2005.02.13;
Скачать: CL | DM;
Вниз
Вопрос по вызову программы из трея. Найти похожие ветки
← →
i-s-v © (2005-01-30 02:38) [40]Что возвращает
> SendMessage(Handle,WM_UsER+$101,0,0 )
? Если не 0 - значит, окно не находится
← →
Руслана (2005-01-30 02:43) [41]Возвращает 0
← →
olookin © (2005-01-30 02:45) [42][40] i-s-v © (30.01.05 02:38)
>>Что возвращает
> SendMessage(Handle,WM_UsER+$101,0,0 )
? Если не 0 - значит, окно не находится
The return value specifies the result of the message processing and depends on the message sent.
← →
i-s-v © (2005-01-30 02:49) [43]
> Если не 0 - значит, окно не находится
Наоборот, если не 0 - то все ОК.
Что пишет GetLastError?
← →
i-s-v © (2005-01-30 02:50) [44]
> olookin
Сорри... 2 часа ночи... Не виже, шо пишу....:)
← →
Руслана (2005-01-30 02:50) [45]а где смотреть что он пишет?
← →
olookin © (2005-01-30 02:53) [46]А если
Handle2 := GetWindow(h,0);
то что происходит?
← →
i-s-v © (2005-01-30 02:59) [47]
> а где смотреть что он пишет?
А он должен писать код последней ошибки...
> Handle2 := GetWindow(h,0);
А код обработчика в окне Tahion..
2 Руслана
Попробуй для начала послать не SendMessage(Handle, WM_UsER+$101, ... ), а
SendMessage(Handle, WM_CLOSE, ... )
← →
Руслана (2005-01-30 02:59) [48]to olookin: я тот вариант уже стерла
← →
olookin © (2005-01-30 03:00) [49][48] Руслана (30.01.05 02:59)
Хм, ну печально конечно, однако мне как бы все равно....
← →
Руслана (2005-01-30 03:03) [50]Пробовала уже посылать WM_Close - не закрывает окно.
А GetLastError пишет Innaccesible value.
Кстати когда посылаю WM_Close возвращаетмся не 0... в отличии от WM_user
← →
i-s-v © (2005-01-30 03:06) [51]Если охота разбираться в чужом коде - загляни на мой сайт: http://i-s-v.org.ua , там есть программа QLoader (в которой я делал что-то типа такого)
← →
Руслана (2005-01-30 03:10) [52]конечно посмотрю, уже качаю
← →
olookin © (2005-01-30 03:13) [53]Все же не понимаю я;
Handle2 := GetWindow(h,GW_OWNER);
ShowWindow(Handle2,SW_Show);
ShowWindow(Handle2,SW_RESTORE);
На кой?
h уже есть - так его и передавать как парметр для ShowWindow
← →
Руслана (2005-01-30 03:24) [54]пробовала еще раньше - все равно не работает.
Пора спать идти - завтра продолжим :)...
← →
Fay © (2005-01-30 07:21) [55]2 Руслана (30.01.05 3:24) [54][Ответить]
Просыпайся, соня! Тебе письмо с фронта. 8)
← →
a.denisov (2005-01-30 12:53) [56]project dpr1;
uses
Forms, Windows,
main in "main.pas" {Form1};
function ActivatePrevInstance: Boolean;
var
PrevInstWnd, PrevInstAppWnd: THandle;
begin
PrevInstWnd := FindWindow(PChar(string(TForm1.ClassName)), nil);
Result := PrevInstWnd <> 0;
if Result then begin
SetWindowPos(PrevInstWnd, HWND_TOP, 0, 0, 0, 0,
SWP_NOSIZE or SWP_NOMOVE or SWP_SHOWWINDOW);
SetForegroundWindow(PrevInstWnd);
BringWindowToTop(PrevInstWnd);
PrevInstAppWnd := FindWindow(nil, "MyAppTitle");
ShowWindow(PrevInstAppWnd, SW_SHOWNORMAL);
SetForegroundWindow(PrevInstAppWnd);
BringWindowToTop(PrevInstAppWnd);
end
else
SetWindowText(Application.Handle, "MyAppTitle");
end;
begin
if not ActivatePrevInstance then begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
end.
← →
Руслана (2005-01-30 15:00) [57]Всем большое спасибо, разобралась, все работает!
Страницы: 1 2 вся ветка
Текущий архив: 2005.02.13;
Скачать: CL | DM;
Память: 0.57 MB
Время: 0.026 c