2

OSメッセージをリッスンするためのWndProcメソッドに似たC#のメソッドはありますか

protected override void WndProc(ref System.Windows.Forms.Message m)
    {
        switch (m.Msg)
        {
            // listen os messages


            // Ueye Message
            case uEye.IS_UEYE_MESSAGE:
                //fetch frame
                break;
        }
        base.WndProc(ref m);
    }
4

5 に答える 5

1

WMI will do if you want to listen for specific messages. I once had a project (see comment on question) that listened for removeable USB drives and WMI worked just fine.

You can use interop as well but I find it messy but YMMV.

于 2011-04-08T06:58:54.440 に答える
1

可視ウィンドウがない場合に Windows メッセージを受信する標準的な方法は、非可視ウィンドウを作成してメッセージを受信することです。

于 2011-04-08T07:02:31.197 に答える
0

これを確認してください:http://social.msdn.microsoft.com/Forums/en-IE/winforms/thread/b44f06fb-fc4a-4fac-87cd-48b2953ea5fa

WndProc をオーバーライドすることは可能のようですが、私自身は試していません。

于 2011-04-08T07:03:50.240 に答える
0

Windows.Interopを使用する必要があります

Win API にアクセスする

于 2011-04-08T06:47:20.987 に答える
0

フォーム (表示されているかどうかに関係なく) がある場合は、 を参照してForm.WndProcください。

そうでない場合は、Application.AddMessageFilterを使用してメッセージ フィルターを追加し、Windows メッセージを監視してみてください。

于 2011-04-08T08:55:35.953 に答える