Visual Basic でビルド時に警告 BC40026 が発生する現象

文書番号 : 26059     文書種別 : 使用方法     最終更新日 : 2008/07/18
文書を印刷する
対象製品
MultiRow for Windows Forms 5.0J
詳細
既存の Visual Basic のプロジェクトに MultiRow for Windows Forms 5.0J を組み込んだとき、ビルド時に次のエラーメッセージ(警告)が表示される場合があります。

  • warning BC40026: 'Template1' は、CLS に準拠していない 'Template' から派生しているため、CLS に準拠していません。

これは、Visual Studio .NET 2002 または 2003 で作成された Visual Basic のプロジェクトに次のコードが存在することが原因です。

AssemblyInfo.vb ファイル
<Assembly: CLSCompliant(True)>


このコードは、Visual Studio 2005 または 2008 で新規に Visual Basic プロジェクトを作成した場合には生成されません。また、C# のプロジェクトでも生成されません。
Visual Studio .NET 2003 ではこの属性が設定されていても警告は表示されませんが、Visual Studio 2005/2008 では警告が表示されます。
(注:MultiRow for Windows Forms 5.0J は Visual Studio .NET 2003 に対応していないため、他の製品での検証によるものです)

この警告を回避するには、CLSCompliant 属性をコメントアウトするかまたは <CLSCompliant(False)> を設定してください。
この警告の詳細は MSDN の次のトピックを参照してください。

Visual Basic リファレンス : エラー メッセージ
'<classname>' は、CLS に準拠していない '<baseclassname>' から派生しているため、CLS に準拠していません。
http://msdn.microsoft.com/ja-jp/library/dy4zaya3.aspx

この文書は、以前は次のFAQ IDで公開されていました : 11368