Hook на Clipboard
От: xCarrot  
Дата: 19.07.05 21:10
Оценка:
Hi all.
Не могу написать глобальный хук на изменения клипбоарда.Мне нужно отлавливать сообщение WM_COPY, например.
Вызываю SetWindowsHookEx с idHook = WH_CALLWNDPROC.

function ClipboardHook(Code, wParam, lParam : integer): LResult; stdcall;
begin
if Code <= 0 then begin
Result := CallNextHookEx(hHook, Code, wParam, lParam);
Exit;
end;

if {здесь проверять Code или wParam, lParam}

Result := CallNextHookEx(hHook, Code, wParam, lParam);
end;

Все попробавл (или не все) — ничего не получается.
Можно как нибудь по другому?
Заранее благодарен.
Re: Hook на Clipboard
От: ansi  
Дата: 19.07.05 23:15
Оценка: 6 (1)
Здравствуйте, xCarrot, Вы писали:

C>Все попробавл (или не все) — ничего не получается.

C>Можно как нибудь по другому?
C>Заранее благодарен.

WM_COPY — это не то. Это сообщение ты посылаешь эдит контролу, если хочешь, чтобы он свой текст поместил в буфер обмена.

Чтобы получать уведомления, используй SetClipboardViewer. Когда содержимое буфера изменится, ты получишь WM_DRAWCLIPBOARD. Остальное читай где-то рядом В MSDN есть примеры.
Re[2]: Hook на Clipboard
От: Ignoramus  
Дата: 20.07.05 09:13
Оценка:
Здравствуйте, ansi, Вы писали:

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


C>>Все попробавл (или не все) — ничего не получается.

C>>Можно как нибудь по другому?
C>>Заранее благодарен.

A>WM_COPY — это не то. Это сообщение ты посылаешь эдит контролу, если хочешь, чтобы он свой текст поместил в буфер обмена.


A>Чтобы получать уведомления, используй SetClipboardViewer. Когда содержимое буфера изменится, ты получишь WM_DRAWCLIPBOARD. Остальное читай где-то рядом В MSDN есть примеры.


Согласен. Есть еще нотификация WM_DESTROYCLIPBOARD на разрушение содержимого клипбоарда.
Re: Hook на Clipboard
От: xCarrot  
Дата: 20.07.05 10:20
Оценка:
Спасипбо, теперь все получилось.
Re: Hook на Clipboard
От: Slava Antonov Россия http://deadbeef.narod.ru
Дата: 20.07.05 12:28
Оценка:
Hello xCarrot, you wrote:

> Не могу написать глобальный хук на изменения клипбоарда.


SetClipboardViewer

--
Всего хорошего, Слава
Posted via RSDN NNTP Server 1.9
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.