winapi — Как перехватить событие вставки в переполнении стека

Я знаю, что могу захватить копия событие, добавив дескриптор окна в цепочку просмотра буфера обмена с помощью SetClipboardViewer или с помощью крючка для клавиатуры.

Но, похоже, сообщения буфера обмена не распространяются, когда вставить происходит (либо с помощью Ctrl + V, щелкните правой кнопкой мыши -> вставить или меню редактирования-> вставить.

Есть ли другой способ, которым мы можем захватить событие вставки?

0

Решение

Это верно, вы не можете обнаружить вставку, просматривая буфер обмена.
Копирование в буфер обмена — это операции записи, которые вы видите в программе просмотра буфера обмена (хотя вы не можете отличить их от вырезанных).

Вставка из буфера обмена является операцией чтения, поэтому вы не видите их в средстве просмотра буфера обмена, и даже если бы вы это сделали, вы не могли бы различить вставку и предварительный просмотр в «вставить специальные» без фактического вставки.

Глобальный мониторинг WM_PASTE может помочь. Например, с помощью Блокнота вы должны увидеть его как с помощью Ctrl + V, так и из контекстного меню. Но некоторые приложения не будут использовать это сообщение — они не обязаны.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]