我最近根据我的规格编辑了一位同学的数据收集软件。当我在 Visual Basic 6 中运行时,该程序运行良好,但理想情况下,我希望将该程序编译为 .exe 文件,以便可以从任何 PC 上运行它。但是,当我选择将其转换为 exe 的选项时,我在编译时收到以下错误:

编译错误:子或函数未定义。

我很好奇为什么我的程序可以从 Visual Basic 中运行,但无法编译成 exe。任何修复/建议将不胜感激!

有帮助吗?

解决方案

在每个文件的开头写入“选项显式”。这会将 vb 行为从弱类型更改为强类型。

这意味着,当您将字符串放入整数时,vb 会立即告诉您,或者至少在您按“运行”时告诉您。在弱类型模式下,程序将一直运行,直到遇到错误,例如“Sub 或 Function not Defined”,然后崩溃。

当您编译成“exe”时,vb 需要进行额外的健全性检查,就像“显式选项”所做的那样。这就是为什么您在正常执行时看不到问题的原因。它仍然在那里,潜伏着,但您可能不会执行有问题的行。

在你拥有的每个 vb 源文件中使用这个关键字非常重要,否则你会一直看到这样的问题。

其他提示

您必须只用启动(F5)运行在IDE中的应用程序 - 这并没有做一个完整的编译所以没有捕捉所有的编译错误。我建议你总是使用开始全编译(按Ctrl + F5) - 然后它会告诉你在哪里的错误

您可以创建自定义控制栏按钮做启动全编译 - 节省打字CTRL + F5所有的时间

它允许您运行,即使它不会编译由于的编译按需功能的IDE支持。正如在其他职位说明可以CTRL-F5做一个完整的编译,或者你可以进入选项 - >常规,然后关闭编译按需......(节省了大量CTRL-F5s的)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top