none
イベントが発生した時に、イベントを発生させた相手を知りたいです。 RRS feed

  • 質問

  • VisualStudio6.0で開発したプログラムです。

    イベントが発生した時に、イベントを発生させた相手を特定させたいです。

    具体的には、WM_MOVEが頻発するのですが、それを発生させている原因を特定したいのです。マウスで動かしているのではなく、何かのアプリケーションがイベントを発生させていると思われるのですが、相手を特定できません。

    どうすれば、特定できるでしょうか?

    2013年7月8日 3:05

回答

  • Visual Studio 6.0にSpy++が付属していると思いますので、とりあえずそれで特定できるかもしれません。

    (参考)
    SPY++を使用する(その1)
    http://www5.ocn.ne.jp/~takeoo/gomake.html


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/

    • 回答の候補に設定 星 睦美 2013年7月10日 0:57
    • 回答としてマーク 星 睦美 2013年7月18日 7:49
    2013年7月8日 3:19
    モデレータ
  • 経験上、この手のメッセージのラッシュは、アプリ自身に原因が
    あることが多いようです。他の正規にリリースされたアプリ製品が
    原因であった例を、見たことはあまりありません。
    WM_SIZE(サイズ変更に対する処理)など、自身に重畳した
    処理をしそうな箇所を疑ってみるのが近道かもしれません。
    また、WM_SETCURSORや、WM_MOUSEMOVE等、比較的頻繁に受領する
    メッセージの処理も疑わしい場合があります。

    言語が不明ですが、症状がなくなるまで、該当しそうな部分をコメント化し、
    原理的にWin32SDKのDefWindowProc()に渡した結果を戻す
    コードなるようにしてみてはどうでしょう。

    • 回答の候補に設定 星 睦美 2013年7月10日 0:57
    • 回答としてマーク 星 睦美 2013年7月18日 7:49
    2013年7月8日 4:34

すべての返信

  • Visual Studio 6.0にSpy++が付属していると思いますので、とりあえずそれで特定できるかもしれません。

    (参考)
    SPY++を使用する(その1)
    http://www5.ocn.ne.jp/~takeoo/gomake.html


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/

    • 回答の候補に設定 星 睦美 2013年7月10日 0:57
    • 回答としてマーク 星 睦美 2013年7月18日 7:49
    2013年7月8日 3:19
    モデレータ
  • 経験上、この手のメッセージのラッシュは、アプリ自身に原因が
    あることが多いようです。他の正規にリリースされたアプリ製品が
    原因であった例を、見たことはあまりありません。
    WM_SIZE(サイズ変更に対する処理)など、自身に重畳した
    処理をしそうな箇所を疑ってみるのが近道かもしれません。
    また、WM_SETCURSORや、WM_MOUSEMOVE等、比較的頻繁に受領する
    メッセージの処理も疑わしい場合があります。

    言語が不明ですが、症状がなくなるまで、該当しそうな部分をコメント化し、
    原理的にWin32SDKのDefWindowProc()に渡した結果を戻す
    コードなるようにしてみてはどうでしょう。

    • 回答の候補に設定 星 睦美 2013年7月10日 0:57
    • 回答としてマーク 星 睦美 2013年7月18日 7:49
    2013年7月8日 4:34
  • フォーラム オペレーターの星 睦美です。
    haohaohao さん、こんにちは

    コミュニティで参考になる情報だと思いますので、haohaohao さんの質問への回答に私から[回答としてマーク] させていただきました。

    MSDN フォーラムがhaohaohao さんのお役にたちましたら幸いです。

    これからもよろしくお願いします。


    日本マイクロソフト株式会社 フォーラム オペレーター 星 睦美

    2013年7月18日 7:53