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の両方が含まれています。