2017-07-26 73 views
0

我在VB6项目中使用.Net DLL。当我尝试从VB6类调用DLL方法时,该方法在VB6 Editor中可用于intellisense,但是当我编译时,在方法调用中出现“下标超出范围”错误。我认为“下标超出范围”是一个运行时错误,但我在编译时得到它。 你对这个编译错误的原因有一些想法吗?VB6下标在编译时超出范围错误

+0

这是哪里的代码在你的项目?下标是我们的Range错误来自没有参数的方法,还是有一些参数被传入?如果有参数被传入,那么下标超出范围错误可能是由于其中的一个。过去我遇到过类似的问题,我相信VB6项目的某些部分可以在编译时执行。您只需要在代码中处理错误,就像在运行时遇到此错误一样。 – Marc

回答

0

您正试图访问一个数组,但超出了它的边界。 因此下标越界

+0

正如在描述中提到的那样,它是一个编译错误而不是运行时错误,VB6正在抱怨方法调用。我认为错误与参数的数量或方法声明的总长度有关,因为我试图调用的暴露的.Net方法有70多个参数(我称之为遗留组件)。 – DevTun

+0

发布与数组的实现/用法相关的代码,毫无疑问,在SO论坛上有人会发现问题。某处可能在循环或递归子程序中,您超出了数组的边界。 – Zeddy