| 
| 
 | Вопрос # 6 102/ вопрос открыт / | 
 |  Здравствуйте, уважаемые эксперты!Как сделать окно программы,чтобы оно было всегда поверх других окон в ОС, таких как - Диспетчер задач, панель задач,комбинация
 ALT+TAB и т.д.
 
|  |   Вопрос задал: casio (статус: Посетитель)Вопрос отправлен: 27 апреля 2012, 13:25
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 10; последнее сообщение — 29 апреля 2012, 22:18; участников в обсуждении: 3. 
|   | min@y™ (статус: Доктор наук), 27 апреля 2012, 13:46 [#1]:Чойта мне это напоминает порно-баннер с милой просьбой "Отправьте СМСку на номер 100500, сами мы не местные, семеро по лавкам...".   Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | casio (статус: Посетитель), 27 апреля 2012, 14:01 [#2]:min@y™: чего сразу "порно-банер"? это окно тестирования которое должно все перекрыть до окончания процесса!   |  
|   | min@y™ (статус: Доктор наук), 27 апреля 2012, 14:28 [#3]: Цитата (casio): это окно тестирования которое должно все перекрыть до окончания процесса! Такую прогу сразу надо отправлять ФТОПКУ!
 Подскажу: прогу можно подсунуть вместо explorer.exe. Как - не скажу, сам догадайся.
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | casio (статус: Посетитель), 27 апреля 2012, 14:50 [#4]:min@y™: спасибо буду думать   |  
|   | Мережников Андрей (статус: Абитуриент), 27 апреля 2012, 20:13 [#5]:а зачем окно тестирования поверх диспетчера? Если эта прога глючить будет, чем убивать будете? |  
|   | casio (статус: Посетитель), 28 апреля 2012, 17:44 [#6]:нашел следующие применении без всяких подмен, но не могу запретить комбинацию Alt+Ctrl+Del, и еще проблемка Alt+Tab отклячается но если нажать Alt+Ctrl+Tab то он снова работает, в чем проблема? program DisableLowLevelKeys;
 
 uses
 Windows, Messages;
 
const
 LLKHF_ALTDOWN  = KF_ALTDOWN shr 8;
 WH_KEYBOARD_LL = 13;
 
type
 
 TKBDLLHOOKSTRUCT = record
   vkCode: DWORD;
   scanCode: DWORD;
   flags: DWORD;
   time: DWORD;
   dwExtraInfo: DWORD;
 end;
 PKBDLLHOOKSTRUCT = ^TKBDLLHOOKSTRUCT;
 
var
 hhkLowLevelKybd: HHOOK;
 
//------------------------------------------------------------------------------
 
function LowLevelKeyboardProc(nCode: integer;  wParam: WPARAM;  lParam: LPARAM): LRESULT; stdcall;
var
 fEatKeystroke: boolean;
 p: PKBDLLHOOKSTRUCT;
begin
 fEatKeystroke := false;
 if nCode = HC_ACTION then
   begin
     case wParam of
       WM_KEYDOWN,
       WM_SYSKEYDOWN,
       WM_KEYUP,
       WM_SYSKEYUP:
         begin
           p := PKBDLLHOOKSTRUCT(lParam);
           fEatKeystroke := ((p^.vkCode = VK_LWIN) or (p^.vkCode = VK_RWIN)) or
                            ((p^.vkCode = VK_TAB) and ((p^.flags and LLKHF_ALTDOWN) <> 0)) or
                            ((p^.vkCode = VK_ESCAPE) and ((p^.flags and LLKHF_ALTDOWN) <> 0)) or
                            ((p^.vkCode = VK_ESCAPE) and ((GetKeyState(VK_CONTROL) and $8000) <> 0)) or
                            ((p^.vkCode = VK_F4) and ((p^.flags and LLKHF_ALTDOWN) <> 0));
         end;
     end;
   end;
 if fEatKeystroke then
   result := 1
 else
   result :=  CallNextHookEx(0, nCode, wParam, lParam);
end;
 
//------------------------------------------------------------------------------
 
begin
 // Install the low-level keyboard & mouse hooks
 hhkLowLevelKybd := SetWindowsHookEx(WH_KEYBOARD_LL, LowLevelKeyboardProc, hInstance, 0);
 
 // Keep this app running until we're told to stop
 MessageBox(0,
            PChar('Alt+Esc, Ctrl+Esc, WIN, Alt+F4, and Alt+Tab are now disabled.' + #13#10 +
                  'Click "Ok" to terminate this application and re-enable these keys.'),
            PChar('Disable Low-Level Keys'),
            MB_OK);
 
 // Remove hooks
 UnhookWindowsHookEx(hhkLowLevelKybd);
end. |  
|   | min@y™ (статус: Доктор наук), 28 апреля 2012, 20:22 [#7]:Ну нахрена программе тестирования такие фильдеперсовые навороты? Что-то тут не так...
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | casio (статус: Посетитель), 28 апреля 2012, 20:55 [#8]:min@y™: ну нужно так,такие требования! если не можете помочь не постите... |  
|   | min@y™ (статус: Доктор наук), 28 апреля 2012, 22:30 [#9]: Цитата (casio): ну нужно так,такие требования! Кто и зачем выдвинул такие требования?
 
 Цитата (casio): если не можете помочь не постите...  Ага, поучи меня ещё!
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | casio (статус: Посетитель), 29 апреля 2012, 22:18 [#10]:min@y™: это не вирус, и это достаточно! |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |