枚举的基础类型 <typename> 不符合 CLS
更新:2007 年 11 月
为该枚举指定的数据类型不属于 公共语言规范 (CLS)。在您的组件中,这不是错误,因为 .NET Framework 和 Visual Basic 支持此数据类型。不过,用严格遵守 CLS 的代码编写的其他组件可能不支持此数据类型。这样的组件可能无法与您的其他组件成功交互。
以下 Visual Basic 数据类型不符合 CLS:
默认情况下,此消息是一个警告。有关隐藏警告或将警告视为错误的更多信息,请参见 在 Visual Basic 中配置警告。
**错误 ID:**BC40032
更正此错误
如果您的组件只与其他 .NET Framework 组件交互,或不与任何其他组件交互,则不必更改任何内容。
如果与之交互的组件不是为 .NET Framework 编写的,则可能通过反射或从文档中确定它是否支持此数据类型。如果支持,则不必更改任何内容。
如果与之交互的组件不支持此数据类型,则必须将它替换为符合 CLS 的最接近类型。例如,如果您不需要 2,147,483,647 以上的数值范围,您可以使用 Integer 替换 UInteger。如果您确实需要更大的范围,可以将 UInteger 替换为 Long。
如果要与 Automation 或 COM 对象交互,请记住某些类型的数据宽度与 .NET Framework 中的数据宽度不同。例如,uint 在其他环境中经常是 16 位。如果将 16 位参数传递给这样的组件,应在托管 Visual Basic 代码中将其声明为 UShort 而不是 UInteger。