2008-10-27 6 views
6

붙여 넣기 이벤트 (상황 별 메뉴 또는 Ctrl + V를 사용하여)가 발생하는시기를 알아야하는 소프트웨어를 개발 중입니다 (파일/디렉토리 만 해당). TeraCopy 또는 Copy Handler와 같이 발생합니다. 복사하여 붙여 넣을 때 붙여 넣기를 처리하는 것은 TeraCopy입니다.
나는 COPY EVENT를 캡처하는 방법을 더 많이 안다. ClipboardViewer 만 설정하면 모든 글로벌 COPY EVENTS (사실 WM_DRAWCLIPBOARD라고 함)를 잡을 수있다. 여기에서 알 수 있습니다 : http://www.radsoftware.com.au/articles/clipboardmonitor.aspx 그러나 ClipBoardViewer는 붙여 넣기 이벤트를 포착 할 수있는 기능을 제공하지 않습니다.글로벌 붙여 넣기 이벤트를 연결하는 방법은 무엇입니까?

+0

대신 키 누르기 Ctrl + V를 감지 할 수 있습니까? – mmiika

답변

1

"붙여 넣기"를 통한 상태 변경 과정은 개별 응용 프로그램마다 다르므로 클립 보드에 액세스 한 후 응용 프로그램의 상태가 변경되었는지 여부를 확인하는 마법 같은 방법이 없습니다.

가장 좋은 방법은 응용 프로그램이 클립 보드에서 데이터를 검색했는지 여부를 감지하는 것입니다. 다시 말하지만 응용 프로그램이이 데이터로 수행 한 작업을 알 수있는 방법이 없습니다. 누군가가 어디를 가든 어디로 갔는지 알지 못하고 누군가가 앞문을 열었다는 것을 알게 된 것과 비슷합니다.

이 작업을 수행하려는 경우 GetClipboardData 함수를 연결하는 것과 같은 작업을 수행 할 수 있습니다. 시스템 전체 API 후크를 찾는 방법에 대한 자세한 내용은 Micrsoft Detours의 샘플을 확인하십시오. - http://research.microsoft.com/sn/detours

-1

그러나 Teracopy 및 Copy Handler와 같은 소프트웨어는 붙여 넣기 이벤트를 감지합니다. 필자는 파일/디렉터리를 붙여 넣을 때 거의 동일하게 감지합니다.

-1

사실,이 소프트웨어는 Ctrl + V뿐 아니라 컨텍스트 메뉴 (오른쪽 클릭)에서 붙여 넣기 옵션을 클릭 할 때도 작동합니다.