0
サンプルでSendMessageネイティブメソッドを使用していました。 、以下のネイティブメソッドの宣言を見つけてくださいCA1901の解決方法 - P/Invoke宣言はポータブルなFxCop警告である必要がありますか?
[DllImport("user32.dll", CharSet = CharSet.Auto)]
internal static extern IntPtr SendMessage(IntPtr hWnd, int msg, int wParam, int lParam);
しかし、私のサンプルでは上記のネイティブメソッドを宣言するとき、それは警告を示し(CA1901 - P /呼び出し宣言は移植する必要があります)。 「このメソッドのパラメータlParamは、64ビットプラットフォームで4バイト幅になります。このAPIの実際のネイティブ宣言は、64ビットプラットフォームでは8バイト幅である必要があることを示しています」
だから我々は、FxCopの警告の上、これを解決することができますどのように、また、私たちは実際の32ビットに基づいてパラメータの大きさと、64ビット・プラットフォームを知ることができる方法を提案してください
バグの宣言で、ルールを追加するのに十分な間違いがあることを伝えるだけです。最後の2つの引数はIntPtrでなければなりません。あなたのプログラムは32ビットモードでのみ実行され、これが永遠になることを知っていれば、問題ではありません。 –