これまでのところ 100% 管理されている .NET ライブラリを開発しています。ここで、いくつかの win32 呼び出しを使用する必要があります。
私が知る必要があるのは、.NET ライブラリがアンマネージと呼ばれるのはいつですか? アセンブリにアンマネージ コードがある場合、またはアセンブリ内のアンマネージ コードが実行される場合
これまでのところ 100% 管理されている .NET ライブラリを開発しています。ここで、いくつかの win32 呼び出しを使用する必要があります。
私が知る必要があるのは、.NET ライブラリがアンマネージと呼ばれるのはいつですか? アセンブリにアンマネージ コードがある場合、またはアセンブリ内のアンマネージ コードが実行される場合
これらの管理されていないwin32呼び出しを行った後、コードが適切にクリーンアップされる限り、ライブラリは管理されます。
100%マネージコードを書いていると思いますが、実際には.NET Frameworkの要点を掘り下げてみると、それでもアンマネージコードが呼び出されます。ILSpyまたは.NETReflectorを使用して、DllImportまたはexternメソッド呼び出しを見つけてください。.NETがすべてのJIT、セキュリティ、ガベージコレクションなどを実行しているため、アセンブリ自体が管理されます。アセンブリ内のオブジェクトに。.NETがアンマネージ関数(Win32など)を呼び出す時点で、.NETはコードを制御できなくなったため、これはアンマネージです。
管理されていないコードのインポートを「管理」する方法を学ぶことをお勧めします。相互運用可能な呼び出しが完了したら、.NETが可能な限りクリーンアップできるように、相互運用可能な呼び出しをラップする必要があります。
プラットフォーム呼び出しの使用方法については、こちらをご覧ください。
http://msdn.microsoft.com/en-us/library/aa288468%28v=vs.71%29.aspx