クリップボードを監視するには?

[戻る]
くらえもん 2005/03/01(火) 21:21:23
こんばんは、お世話になります。

クリップボードの文字列(CF_TEXT)を監視して新たに文字列が入ってきたらその文字列を取得す
るというプログラムを作りたいと思っています。
クリップボードへ文字列を格納したり文字列を取得することについてはしっかり調べ間違いない
コードができています。
クラス化しGetClipboardTextという名前の関数を用意しています。

1秒に1回GetClipboardTextをして、文字列を格納し、前回と違えば入ってきたことがわか
る、という方法はありますが、そうなるとどうしても重くなってしまいます。
クリップボードに文字列が格納されたらそれをメッセージとして受け取る、といった処理はなに
か方法があるのでしょうか?
ほとんど勉強してない分野ですがフックというものを使えばもしかしてできるのではないかなど
という考えは脳裏にありますがまた別の分野でしょうか?
もし何かいい方法があるようでしたら教えていただけると助かります。
お願いします。

尚、開発環境はVC6でMFCは使わない普通のWin32アプリケーション、OSはWin2Kです。

シャノン 2005/03/01(火) 21:41:26
クリップボードビューワチェインという仕組みがあります。
SetClipboardViewer 関数について調べてみてください。

くらえもん 2005/03/02(水) 02:25:15
[[解決]]
ありがとうございました!
こんな簡単にこんなにいい精度でできるとは思いませんでした!
本当に助かりました、ありがとうございます。

古いスレッドには追加発言できません。