enum の基になる型 '<typename>' は CLS に準拠していません。
更新 : 2007 年 11 月
この列挙値に指定されたデータ型は、共通言語仕様 (CLS) のデータ型ではありません。.NET Framework および Visual Basic はこのデータ型をサポートするため、このコンポーネントの内部ではエラーになりませんが、CLS に厳密に準拠したコードに作成された別のコンポーネントは、このデータ型をサポートしない可能性があります。そのようなコンポーネントは、このコンポーネントと正常にやり取りできない可能性があります。
次の Visual Basic データ型は CLS に準拠していません。
既定では、このメッセージは警告です。警告を非表示にする方法や、警告をエラーとして扱う方法の詳細については、Visual Basic での警告の構成 を参照してください。
Error ID: BC40032
このエラーを解決するには
このコンポーネントが他の .NET Framework コンポーネントとのみやり取りする場合、または他のどのコンポーネントともやり取りしない場合は、何も変更する必要はありません。
.NET Framework 用に作成されていないコンポーネントとやり取りする場合は、リフレクションまたはドキュメントを調べて、このデータ型がサポートされているかどうかを確認できる可能性があります。サポートされている場合は、何も変更する必要はありません。
このデータ型をサポートしないコンポーネントとやり取りする場合は、CLS 準拠の型の中で最も近いデータ型に置き換える必要があります。たとえば、2,147,483,647 を超える値の範囲が必要でない場合は、UInteger の代わりに Integer を使用できます。範囲を拡張する必要がある場合は、UInteger を Long で置き換えてください。
オートメーションまたは COM オブジェクトとやり取りする場合は、一部の型に .NET Framework とはデータ幅が異なるものがあることに注意してください。たとえば、uint は他の環境では 16 ビットです。そのようなコンポーネントに 16 ビットの引数を渡す場合は、Visual Basic のマネージ コードで、UInteger 型ではなく UShort 型で宣言してください。