【发布时间】:2011-09-12 07:56:31
【问题描述】:
在编译 Visual Basic 程序集时,将 int32 变量转换为 int64 以调用需要 int32 的 adodb 方法。这会导致方法在运行时未找到异常。使用反射器检查方法调用的位置时可以看到不必要的强制转换操作,并且在源代码中不存在。
当代码在我的 64 位 windows 7 机器上编译时,一切都很好,但在 64 位 windows 2008 r2 上,添加了不必要的强制转换。
有人知道如何阻止这种情况发生吗?
【问题讨论】:
-
只是出于好奇,您在项目中启用了 Option Strict 吗?
-
我尝试了开启和关闭选项严格。没什么区别。
-
很奇怪。 Option Strict On 真的不应该向 Int64 添加额外的强制转换。
标签: vb.net com compiler-construction