![]() |
|
Модераторы: Akina |
![]()
|
|
| SeT |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 13.4.2005 Репутация: нет Всего: нет |
Не знаете, как заблокировать эти кнопки? В 98 умею, а в ХР не получается. Помогите-е-е!!!
|
|||
|
||||
| Mephisto |
|
|||
![]() Волкъ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1818 Регистрация: 27.8.2003 Где: Питер Репутация: 2 Всего: 34 |
Необходимо создать эмуляцию экранной заставки! Зайди на Гугел, и фключи поиск по ScreenSaver VB. Что-нить да появится, а вообще, если можешь, выложи сюда код для 98! Может мы поправим и будет у тебя для ХР.
|
|||
|
||||
| efedron |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 135 Регистрация: 16.3.2005 Репутация: 4 Всего: 4 |
заблокировать контрол-аль-дел можно только на 9х (функция RegisterServiceProcecc если не ошибаюсь), а вот в NT эта комбинация работает всегда.
--------------------
Прежде чем совершить акт разрезания определенной материи целесообразно удостовериться в правильности всех произведенных измерений. |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 7 Всего: 186 |
И не получится. В XP это дырка заделана. В 98 нужно вызывать SystemParametresInfo, как-то так |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
В 2000-ХР-2003 система независимо ни от чего самостоятельно обрабатывает это нажатие. Впрочем, надо отдать ей должное, по цепи событие все-таки передается - т.е. если отказом закрыть окно, то нажатие попадает в активное приложение (где обычно умирает за ненадобностью).
Единственная возможность - свой драйвер работы с портом периферии (клавиатуры). -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| efedron |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 135 Регистрация: 16.3.2005 Репутация: 4 Всего: 4 |
ой, прошу прощения - перепутал, в 9х контрол-альт-дел блокируется функцией SystemParametersInfo с параметром ..как-то SCREENSAVER_ACTIVE (что-то очень похожее), а RegisterServiceProcess - скрывает процесс из диспетчера 9х
--------------------
Прежде чем совершить акт разрезания определенной материи целесообразно удостовериться в правильности всех произведенных измерений. |
|||
|
||||
| Mephisto |
|
|||
![]() Волкъ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1818 Регистрация: 27.8.2003 Где: Питер Репутация: 2 Всего: 34 |
А как же ScreenSaver'ы. В них тоже можно нажать волшебные клавишы? Даже когда их под пароль ставишь? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
Именно так как я сказал выше - скринсэйвер сам не получает этого нажатия, его обрабатывает ядро ОС. И при необходимости передает активному приложению (скринсэйверу) -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Mephisto |
|
||||
![]() Волкъ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1818 Регистрация: 27.8.2003 Где: Питер Репутация: 2 Всего: 34 |
Ну, так вышенаписаный код как раз и не позволяет снять задачу со скринсэйвера если там (вдруг) поставлен пароль! Но я лично не заю как это в нт реализовано. Мне самому интересно! |
||||
|
|||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 7 Всего: 186 |
Так система передает c+a+d приложению? Если да, можно просто снять таскмэнэджер
|
|||
|
||||
| efedron |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 135 Регистрация: 16.3.2005 Репутация: 4 Всего: 4 |
как я понял система не передает приложению контрол альт дел, поскольку конструкция типа:
не работает, хотя если убрать любое из условий, то все в порядке... --------------------
Прежде чем совершить акт разрезания определенной материи целесообразно удостовериться в правильности всех произведенных измерений. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
Есть такая программуська, как VMWare... Так вот, если в виртуальной машине прессануть CAD, то есссно Винда самостоятельно на это дело реагирует, выдавая стандартное окно на 6 пунктов... так вот, если его сбросить ESC-ейпочкой, Варя тут же тебе сообщает что зря ты с-под нее жал CAD, потому как хост-система это выловит первой (что собсно и наблюлось) - но ить и Варе нажатие досталось... а она своего драйвера на клаву железной рукой не ставит - чисто хуки... кстати, если есть желание великое разобаться, то сделай ЕХЕ, реагирующий на нажатие Del и выводящий состояние при этом шифтов, и в скринсэйверы его... любопытно что при этом накопается... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 7 Всего: 186 |
Между прочим, можно сделать так: при нажатии c+a твоя прога чуть подождет, а потом поищет окно диспетчера и если оно есть, заклозит его
Добавлено @ 11:10 Ведь c+a она ловит? |
|||
|
||||
| Black_Star |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 192 Регистрация: 9.9.2003 Где: Minsk Репутация: 4 Всего: 4 |
Есть такая ф-я SetKeyboardState() кажись. С помощью ее можно вообще всю клаву отрубить
|
|||
|
||||
| efedron |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 135 Регистрация: 16.3.2005 Репутация: 4 Всего: 4 |
Black_Star
ну, теоретически, если каждую милисекунду вызывать ее с параметром, что ни одна клавиша не нажат, то возможно, хотя че-то сомневаюсь я на счет c+a+d Run-time error диспетчер-то заклоузить - это дело пустяковое, основное - это победить системное меню, которое появляется после нажатия оных клавиш Akina
да хоть в сервисы! появляется сисменю виндовое, а программка молчит..я так сразу для проверки сделал - безуспешно.. --------------------
Прежде чем совершить акт разрезания определенной материи целесообразно удостовериться в правильности всех произведенных измерений. |
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |