Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 6 102

/ вопрос открыт /

Здравствуйте, уважаемые эксперты!
Как сделать окно программы,чтобы оно было всегда поверх других окон в ОС, таких как - Диспетчер задач, панель задач,комбинация
ALT+TAB и т.д.

casio Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: casio (статус: Посетитель)
Вопрос отправлен: 27 апреля 2012, 13:25
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 10; последнее сообщение — 29 апреля 2012, 22:18; участников в обсуждении: 3.
min@y™

min@y™ (статус: Доктор наук), 27 апреля 2012, 13:46 [#1]:

Чойта мне это напоминает порно-баннер с милой просьбой "Отправьте СМСку на номер 100500, сами мы не местные, семеро по лавкам...". :)
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
casio

casio (статус: Посетитель), 27 апреля 2012, 14:01 [#2]:

min@y™: чего сразу "порно-банер"? это окно тестирования которое должно все перекрыть до окончания процесса! :-)
min@y™

min@y™ (статус: Доктор наук), 27 апреля 2012, 14:28 [#3]:

Цитата (casio):

это окно тестирования которое должно все перекрыть до окончания процесса!

Такую прогу сразу надо отправлять ФТОПКУ!
Подскажу: прогу можно подсунуть вместо explorer.exe. Как - не скажу, сам догадайся.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
casio

casio (статус: Посетитель), 27 апреля 2012, 14:50 [#4]:

min@y™: спасибо буду думать :-)
Мережников Андрей

Мережников Андрей (статус: Абитуриент), 27 апреля 2012, 20:13 [#5]:

а зачем окно тестирования поверх диспетчера? Если эта прога глючить будет, чем убивать будете?
casio

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™

min@y™ (статус: Доктор наук), 28 апреля 2012, 20:22 [#7]:

Ну нахрена программе тестирования такие фильдеперсовые навороты?
Что-то тут не так...
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
casio

casio (статус: Посетитель), 28 апреля 2012, 20:55 [#8]:

min@y™: ну нужно так,такие требования! если не можете помочь не постите...
min@y™

min@y™ (статус: Доктор наук), 28 апреля 2012, 22:30 [#9]:

Цитата (casio):

ну нужно так,такие требования!

Кто и зачем выдвинул такие требования?

Цитата (casio):

если не можете помочь не постите...

Ага, поучи меня ещё!
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
casio

casio (статус: Посетитель), 29 апреля 2012, 22:18 [#10]:

min@y™: это не вирус, и это достаточно!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 16:42
Выполнено за 0.03 сек.