Перехватить нажатие Ctrl+C, Ctrl+x, Ctrl+v в Windows

Все особенности программирования под платформу Wintel
Ответить
dr.Jekill
Сообщения: 509
Зарегистрирован: 03 янв 2009, 23:17
Откуда: Voronezh
Контактная информация:

21 янв 2009, 15:23

Перехватить нажатие Ctrl+C, Ctrl+x, Ctrl+v (а так же команды меню Копировать, Вырезать, Вставить) в Windows и запомнить к каким файлам это относится.
Как проверить есть ли среди выделенных файлов на диске CD/DVD поврежденные?

Пожалуйста поделитесь соображениями - Буду очень признателен! :)

С уважением dr.Jekill.
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

21 янв 2009, 15:50

1)
Тотальный перехват событий в Windows возможен (ищите про Хуки (Hooks)), но это не то что вам нужно.
Есть возможность перехвата именно команд копирования/перемещения/удаления. (copyhook).
Для этого пишется COM-сервер, реализующий специально для этого предусмотренные интерфейсы Explorer. После регистрации в Windows он будет получать управление при выполнении данных операций и сможет влиять на их работу (например, определенные файлы при копировании).

Лет 6 назад выходила книга про использование DCOM в Delphi, если она у меня еще сохранилась, пришлю ее название. Там как раз был готовый пример такого встраивания в Explorer.

2)
Проверить наличие поврежденных файлов можно только если попытаться их прочитать и обработать соответствующее исключение. По-другому - никак.
dr.Jekill
Сообщения: 509
Зарегистрирован: 03 янв 2009, 23:17
Откуда: Voronezh
Контактная информация:

21 янв 2009, 16:36

Большое спасибо!
А если еще дадите название книги - Вам просто цены не будет! :)

Про второй пункт, если можно поподробнее.

Есть еще у кого какие идеи?
Ответить