生成应用程序时LabVIEW 出现错误 1502

更新 Aug 1, 2023

适用于

软件

  • LabVIEW Application Builder Module
  • LabVIEW
  • LabVIEW FPGA Module
  • LabVIEW Sound and Vibration Toolkit
  • LabVIEW State Diagram Toolkit

问题详述

  • 尝试使用 LabVIEW 生成应用程序时出现错误 1502:

生成以下文件时发生错误:

<文件路径>

VI 在生成过程中损坏。打开程序生成规范并启用调试以包括前面板和程序框图。
  • 当我生成 LabVIEW Sound and Vibration工具包的交付示例之一时,出现错误 1502

解决方案

当应用程序生成器由于与某些必需组件的链接较弱而尝试加载 VI 依赖项或程序框图时,会发生错误 1502。

应用程序 (EXE) 属性对话框中有几个设置通常可以帮助解决此问题。更改这些设置将显着增加编译时间和可执行文件的大小。但是,它不会极大地影响执行速度。
  • 此类问题的可能解决方法是在高级类别中启用调试。选中此选项将包括VI的程序框图,这将大大增加应用程序的大小(大约增加一倍),但通常会解决此错误。
  • 另一种解决方法是使导致错误的 VI 包含前面板和程序框图。导航至源文件设置类别并选择导致错误的 VI。取消选中移除程序框图框。如VI未在项目文件部分列出,则选择依赖关系。取消选中移除前面板移除程序框图
  • 取消选中附加排除项中的以下设置,如下面的屏幕截图所示:断开连接自定义类型移除项目库的未使用成员。
  • 如果您在生成 LabVIEW Sound and Vibration工具包示例时遇到此错误,请确保取消选中上一个要点中提到的附加他排除项,以避免删除工具包使用的重要依赖项。
  • 可能发生此问题的另一个原因是,如果当前版本已弃用 LabVIEW 先前运行时的依赖项。按照如何在 LabVIEW 中进行批量编译中提供的指示对您的项目进行批量编译。
  • 此错误通常是由于从包含永远不会执行的代码的 VI 构建应用程序引起的,例如,将常量连接到条件结构的选择器接线端。此外,这可能是由于从项目中删除或移除了可能仍加载到内存中的子 VI 和依赖项造成的。
    • 如果您在解决此错误后仍然遇到子 VI 未执行的问题,请尝试在构建可执行文件时取消选中附加排除项部分下的移除未使用的多态 VI 实例断开连接未使用的内嵌子 VI
  • 如果存在程序框图禁用结构或条件禁用结构代码,有时也会发生错误 1502。建议从程序框图中删除任何不会使用的代码。例如,处于 程序框图禁用结构的禁用情况下的代码。还建议显式包含项目依赖项中的代码。
  • 如果您在构建与 FPGA 通信的实时应用程序时看到此错误,并且它通过位文件引用调用它,请尝试刷新其中的 FPGA VI 引用:
    • 在您的 RT 主 VI 中,打开程序框图 >右键单击打开 FPGA VI 引用函数>配置> 取消选择位文件> 单击确定>右键单击打开FPGA VI 引用函数>配置> 再次选择位文件以刷新引用 >保存您的 VI,然后再次尝试生成应用程序。
  • 如果您使用 LabVIEW 状态图工具包生成状态机,则会发生错误 1502。
    • 右键单击状态机循环 > 选择从编辑器向导中解锁代码。
    • 找到所有Integer to Enum节点并将它们替换为Variant To Data节点。

 

1. 在 LabVIEW 项目浏览器中,展开依赖关系,找到与 Report Generation 工具包相关的库和类。 Image_2023-03-07_17-53-40.png

2. 右键单击类/库并选择浏览...。

 

Image_2023-03-07_17-54-03.png

 

第二步之后,应该打开文件资源管理器的窗口。

Image_2023-03-07_17-54-39.png

3. 将提到的库/类拖放到 LabVIEW 项目中。

4. 创建一个新的可执行文件并将提到的库和类添加到始终包含选项中。

5. 生成可执行文件。

 

注意:如果在创建可执行文件的过程中,您会收到与损坏的 VI 相关的错误,请使用错误窗口中提到的路径打开 VI,找到灰色的调用节点,右键单击调用节点,然后选择重新链接调用节点。

相关信息

构建应用程序时,LabVIEW 所做的第一步是将代码副本作为源代码发布到新目录,同时更改设置以编译为单个 EXE 文件。错误 1502 发生在该进程出现问题时。这是由薄弱链接引起的,薄弱链接可能由多种原因引起,例如:图表禁用结构、不良依赖关系等。