Visual Studioで新しいC#プロジェクトを作成すると、生成されたAssemblyInfo.csファイルには、アセンブリGUIDを指定する属性が含まれます。属性の上のコメントは、「このプロジェクトがCOMに公開されている場合」に使用されることを示しています。
COMに表示する必要のあるタイプがアセンブリに含まれていないため、アセンブリに。のマークを付けました[assembly: ComVisible(false)]。では、GUIDを指定する意味はありますか?
私の考えでは、答えは「いいえ」です。それでは、デフォルトのAssemblyInfo.csファイルに[assembly: ComVisible(false)]との両方が含まれているのはなぜ[assembly: Guid("...")]ですか。
編集:
回答を要約すると:
それらの間で、回答は、COM相互運用機能が使用されている場合にのみGUIDを指定する必要があることを説明しています。したがって、私の状況では、GUIDは必要ありません。
Sharptoothはさらに、個々のタイプ[assembly: ComVisible(false)]をオーバーライドできるため、COM相互運用機能を使用しないことを意味しないと説明しています。ComVisibleこのため、デフォルトのAssembyInfo.csには[assembly: ComVisible(false)]とGUIDの両方が含まれています。