掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
貼り付けを監視するには? (ID:25693)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
結果報告に一月近くかかってしまい申し訳ありません。 WM_RENDERFORMATを利用した貼り付けの監視ですが参考になるページがありました。 http://hp.vector.co.jp/authors/VA003525/tips21.htm この方法で貼り付けを監視しつつクリップボードの変更も 監視をしたプログラムを作ってみたのですが、 他のクリップボードのツールなどを動作させると場合に無限ループの ような状態に陥ることが判明しました。 例えば、WM_RENDERFORMATを待つソフトをAとして、 他のクリップボードのツールをBとすると、 1.クリップボードに変更があったことをソフトAが感知 2.ソフトAがクリップボードの中身を取得し 遅延レンダリング状態にする。 3.ソフトBがクリップボードの変更を感知し、 クリップボードの中身を取得する。 4.ソフトAにWM_RENDERFORMATメッセージが届きクリップボードに 値を書き込み、少し待機(貼り付けの完了待ち)した後、 遅延レンダリング状態にする。 (このときクリップボードが変更されたことになる) 5.ソフトBがクリップボードの変更を感知し、 クリップボードの中身を取得する。 あとは4と5を繰り返すので無限ループのような状態に陥ってしまう。 クリップボードのチェーンでソフトBに変更を渡さない方法などを 考えたのですが、そのようなことをするソフトは非常にお行儀が悪い ので、遅延レンダリングによる貼り付け監視は出来ないという結論に なりました。 RegisterHotKeyなどを利用して貼り付け用ホットキーを作り、 このホットキーで貼り付けた場合に限り末尾の数字を書き換える処理を 実行する方法が一番現実的だと思いました。 長文すみません。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.