https://msdn.microsoft.com/en-us/library/ms182161.aspx.NETでNativeMethodsクラスが特別に処理されていますか?
このページで説明されている3つのクラスは、特に.NET Frameworkで処理されますか? (NativeMethods、SafeNativeMethods、UnsafeNativeMethods)
私は、NativeMethodsクラスのカテゴリを作成しても問題ないかと思います。例:
ComNativeMethods
User32NativeMethods
OleStorageNativeMethods
私の解釈はそれが慣例であるということです、ではないことランタイムは何かを変えます。開発者は、クラスに適切なセキュリティ属性を設定する責任があります。たとえば、次のようになります。 "NativeMethods - このクラスは、アンマネージコードアクセス許可のスタックウォークを抑制しません(System.Security.SuppressUnmanagedCodeSecurityAttributeをこのクラスに適用しないでください)。 –
関連項目:"これらのクラスはNativeMethodsクラスに似ていますが、 SuppressUnmanagedCodeSecurityAttributeという特別な属性を使用してマークしますこの属性を適用すると、実行時にすべての呼び出し元にUnmanagedCode権限があることを確認するために完全なスタックウォークは実行されません。この属性は細心の注意を払って使用する必要があります。誤って実装されているとセキュリティに深刻な影響を与える可能性があります。 " –
ありがとうございます。私は私の答えを更新しました。 –