| imho.ws |
![]() |
|
|
|
# 3 |
|
Member
Регистрация: 10.03.2002
Адрес: Israel
Сообщения: 245
![]() ![]() |
Посмотри здесь - http://www.sources.ru/cpp_dll.shtml
__________________
Best Regards |
|
|
|
|
# 4 |
|
Guest
Сообщения: n/a
|
Может быть тогда поможете разобрать что этот кусок кода делает???
--- RegisterHotKey(0, 356, Mod_Shift, VK_Space); RegisterHotKey(0, 358, Mod_Control, VK_End); Name := ParamStr(1); if ParamStr(2) <> '' then Name := Name +' ' + ParamStr(2); if ParamStr(3) <> '' then Name := Name +' ' + ParamStr(3); if Name = '' then Name := 'Blablabla'; repeat WaitMessage; GetMessage(HotKey, 0, WM_HotKey, WM_HotKey); if HotKey.WParam = 356 then begin Handle := FindWindow(nil, PChar(Name)); if Hidden then begin Enabled := True; EnableWindow(Handle, Enabled); ShowWindow(Handle, SW_Restore); SetForegroundWindow(Handle); Hidden := False; end else begin Enabled := False; SetForegroundWindow(GetNextWindow(Handle, GW_HWNDPREV)); EnableWindow(Handle, Enabled); ShowWindow(Handle, SW_Hide); Hidden := True; end; end; until HotKey.WParam = 358; EnableWindow(Handle, True); ShowWindow(Handle, SW_Restore); SetForegroundWindow(Handle); --- Хотя бы в общих чертах... как работает REGISTERHOTKEY...
|
|
|
# 5 |
|
Guest
Сообщения: n/a
|
Нуууу... глядя чуть трезвым левым глазом... можно предположить примерно следующее :
1. регистрируются две горячие клавиши (shift+space и ctrl+end) 2. из командной строки высасывается название окна 3. цикл в котором ждем жмапанья на зарегистрированные горячие клавиши если надавили ctrl+end - выход из цикла и восстановление окна если давим shift+space - прячем или показываем окно, которое было указано в командной строке (все зависит от предыдущего состояния окна). ЗЫЖ код не красивый и перекрученный это конечно же имхо ничего личного, я то сам слесарь...
|