2016-11-04 7 views
0

私はWndProcがオーバーライドされている古いアプリケーションをデバッグしています。そこで私はID = 0xC1B0のメッセージを得ました。これは、これがmsdn articleに従ってシステム全体に一意のメッセージであることを意味します。RegisterWindowMessageによって登録されたメッセージの名前を取得します。

RegisterWindowMessage(...)のmicrosoftに記載されているように、同じ文字列のパラメータは同じメッセージIDになります。したがって、message-idとパラメータの間には一意のリンクがあります。

私の質問は今です:メッセージIDがあれば、パラメータを取得する可能性はありますか?はいの場合、これはメッセージの出所を見つけるのに役立ちます。

+0

好意スパイ++、それは文字列を示します。または、GetClipboardFormatName()を使用します。 –

+0

ヒントをありがとう。 – scher

答えて

0

このように、blogには直接的な方法はありませんが、機能GetClipboardFormatName(...)は問題を解決するための作業です。私は次のようにそれを使用し

[DllImport("user32.dll")] 
static extern int GetClipboardFormatName(uint format, [Out] StringBuilder lpszFormatName, int cchMaxCount); 

public string GetMessageName(uint msg) 
{ 
    return GetClipboardFormatName(msg); 
} 
関連する問題