在用VI Server调用Real-Time终端上运行的VI时,为什么会出现1003或1124的错误?



主要软件:
主要软件版本: 8.5.1
主要软件修正版本: N/A
次要软件: N/A

问题:

我尝试在host VI中通过VI Server调用一个Real-Time终端上VI,当我运行host VI时,出现以下错误

Error 1124: 该VI不能被加载.

Error 1003: 该VI无法执行。很可能是该VI不能运行或其子VI不能被定位。 通过File » Open 打开该VI,测试它是否能够正常运行。

我可以打开RT终端上的VI并且正确运行,并且我发现,如果运行该VI并保持界面打开,host VI就可以正常运行了。既然我的RT终端上的VI没有错误,为什么还是会报上述的两个错误呢?



解答:

        终端上的VI有可能在调用子VI和DLL。你需要在发布源程序时包括所有的附加文件,并且将它们FTP到终端上。

  1. 在终端上使能 VI Server(右键 » 属性)。应用该新的设置。
  2. 右键 程序生成规范» 新建 » 源代码发布。
  3. 点击源文件并添加target VI到始终包括列表.
  4. 点击附加排除项并取消勾选不包括vi.lib中的文件,不包括instr.lib中的文件不包括user.lib中的文件.
  5. 对于较小的源程序发布, 勾选 移除项目库未使用成员移除未使用成员后修改项目库文件. 这将为您的应用程序只添加顶层VI需要的项。
  6. 点击生成.
  7. 打开 Windows Explorer并输入ftp://<IP Address>
  8. 复制生成的应用程序到RT终端,或右键点击程序生成规范选择发布
  9. 运行host VI,host VI必须使用正确的IP地址和VI路径(终端上的)。

注意:当你的顶层VI(或任何子VI)含有定时循环时,你必须做完上述所有的步骤。定时循环是LabVIEW中一种称为Xnode的特殊的节点,在源程序发布时不会像常规的子VI一样被自动包括。正是因此,步骤3和4在这种情况下必须要执行。



相关链接:

附件:





报告日期: 06/20/2007
最近更新: 06/12/2015
文档编号: 4AJCJ3K2