CA1017: アセンブリに ComVisibleAttribute を設定します

プロパティ
ルール ID CA1017
Title アセンブリに ComVisibleAttribute を設定します
カテゴリ デザイン
修正が中断ありか中断なしか なし
.NET 8 では既定で有効 いいえ

原因

アセンブリに System.Runtime.InteropServices.ComVisibleAttribute 属性が適用されていません。

規則の説明

ComVisibleAttribute 属性によって、COM クライアントからマネージド コードにアクセスする方法が決まります。 アセンブリで COM の参照範囲を明示することをお勧めします。 COM の参照範囲は、アセンブリ全体に設定し、個々の型と型のメンバー用にオーバーライドできます。 この属性がない場合、アセンブリのコンテンツは COM クライアントから参照できます。

違反の修正方法

この規則違反を修正するには、この属性をアセンブリに適用します。 アセンブリが COM クライアントに表示されないようにするには、この属性を適用し、その値を false に設定します。

どのようなときに警告を抑制するか

この規則による警告は抑制しないでください。 アセンブリを表示する場合は、この属性を適用し、その値を true に設定します。

次の例は、COM クライアントに表示されないようにするために ComVisibleAttribute 属性が適用されているアセンブリを示しています。

<Assembly: System.Runtime.InteropServices.ComVisible(False)>
Namespace DesignLibrary
End Namespace
[assembly: System.Runtime.InteropServices.ComVisible(false)]
namespace DesignLibrary {}

関連項目