Win32 Hooks
От: Jalexoid Литва  
Дата: 27.08.02 21:17
Оценка:
Люди помогите мне я ни как не могу понять как писать HOOKи ,а самое проблематичное ето HOOK на копирование и удаление!

Мне не плохо было бы узнать нормальный сайт с примерами (MSDN - х...я, там нету ничего).
Я вообще хочу написать HOOK под Alt+Ctrl+Del, Alt+Tab, Alt+Esc, Ctrl+Esc, WinKey, и тд (еу системные клавишы).


Неплохо было бы узнать как заблокировать CD-ROM чтобы он не открывался когда нажимаеш
на кнопку Eject(на CD-ROM'e).

Я бы предоставил код но его нет я только делаю тесты чтобы потом знать.
Re: Win32 Hooks
От: _dIAMOND_ Россия  
Дата: 27.08.02 22:05
Оценка:
Здравствуйте Jalexoid, Вы писали:

J>Люди помогите мне я ни как не могу понять как писать HOOKи ,а самое проблематичное ето HOOK на копирование и удаление!:(


на копирование и удаление — это в explorer'e только? или он должен работать и в диалоговых окнах?
Надо ставить 2 хука — на posted и sent messages, где ловить WM_COMMAND с соответствующими параметрами (юзай spy++, не ленись)

J>Мне не плохо было бы узнать нормальный сайт с примерами (MSDN - х...я, там нету ничего).

J>Я вообще хочу написать HOOK под Alt+Ctrl+Del, Alt+Tab, Alt+Esc, Ctrl+Esc, WinKey, и тд (еу системные клавишы).

На ctrl-alt-del хук никто поставить не даст, все остальное — элементарно.
Главное — читай MSDN и помни — тело перехватчика должно находиться в dll! Если хочешь, могу даже прислать пример (правда на delphi:( ), я с этим одно время навозился вдоволь:)

J>:(

J>:shuffle:
J>Неплохо было бы узнать как заблокировать CD-ROM чтобы он не открывался когда нажимаеш
J>на кнопку Eject(на CD-ROM'e). :crash:

А вот cd-rom — это из другой серии совсем. Здесь, кажется, нужно работать напрямую с драйвером через IOCTL, и никаких прибамбасов:)

J>Я бы предоставил код но его нет я только делаю тесты чтобы потом знать.
Re[2]: Win32 Hooks
От: Jalexoid Литва  
Дата: 28.08.02 06:59
Оценка:
Что такое spy++ ?
И как заблокировать Ctrl+Alt+Del?
Re[2]: Win32 Hooks
От: vasketsov Россия http://ntprog.by.ru
Дата: 28.08.02 07:32
Оценка: 6 (1)
Здравствуйте _dIAMOND_, Вы писали:

D>А вот cd-rom — это из другой серии совсем. Здесь, кажется, нужно работать напрямую с драйвером через IOCTL, и никаких прибамбасов



Именно так.



NTSTATUS NTAPI LockUnlockDevice(IN HANDLE hDevice, IN BOOLEAN PreventRemoval)
{
        PREVENT_MEDIA_REMOVAL pmr = {PreventRemoval};
        IO_STATUS_BLOCK iosb;

        return ZwDeviceIoControlFile(hDevice,NULL,NULL,NULL,&iosb,IOCTL_STORAGE_MEDIA_REMOVAL,&pmr,sizeof pmr,0,0);
}


Надо в функцию отдать хэндл девайса, чье имя должно быть типа \\Device\\Cdrom0, если Native-имя использовать.

ZwDeviceIoControlFile в DeviceIoControl сами переведете если надо.
Васкецов Сергей
http://registry.km.ru
Re[3]: Win32 Hooks
От: _dIAMOND_ Россия  
Дата: 28.08.02 20:45
Оценка:
Здравствуйте Jalexoid, Вы писали:

J>Что такое spy++ ? :maniac:

J>И как заблокировать Ctrl+Alt+Del?

ms visual studio ставили? :-)
утилита такая для просмотра окон и монитора сообщений. Типа (боюсь даже говорить) winsight, только хорошая:)

Ctrl+Alt+Del не блокируются ПРИНЦИПИАЛЬНО, разве что писать драйвер для клавиатуры или еще ченить нискоуровневое.
Re[4]: Win32 Hooks
От: TK Лес кывт.рф
Дата: 28.08.02 21:03
Оценка:
Здравствуйте _dIAMOND_, Вы писали:

D>Здравствуйте Jalexoid, Вы писали:


J>>Что такое spy++ ?

J>>И как заблокировать Ctrl+Alt+Del?

D>ms visual studio ставили?

D>утилита такая для просмотра окон и монитора сообщений. Типа (боюсь даже говорить) winsight, только хорошая

D>Ctrl+Alt+Del не блокируются ПРИНЦИПИАЛЬНО, разве что писать драйвер для клавиатуры или еще ченить нискоуровневое.


Это называется GINA
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.