如何确定一个应用程序以VI还是可执行文件的方式运行

更新 Jan 8, 2019

适用于

Software

  • LabVIEW

问题详述

如何编程来实现确定一个应用程序是以VI还是可执行文件的方式运行。

解决方案

  • 通用操作系统(例如Windows操作系统)
要编程实现确定一个应用程序的状态,请使用应用程序类型属性节点。
 
  1. 应用程序控制选板(Application Control)上选取属性节点(Property Node)放置在程序框图上。
  2. 选择Kind属性,如下图所示。
  1. 属性节点的输出端将根据当前操作环境返回相应的枚举变量,该枚举可用作case结构的选择条件,以相应地实现代码。
  • 实时操作系统
在实时操作系统中, Application Kind Property Node(应用程序类型属性节点) 的返回值始终是Embedded LabVIEW,因此它不能用于确定正在运行的应用程序是否是一个 Stand-Alone Real-Time Application(独立的RT端的应用程序)

可以使用Conditional Disable Structure(条件禁用结构) 作为替代,检查RUN_TIME_ENGINE这个标志的值。
  • 如果RUN_TIME_ENGINE值为True - 应用程序在启动时作为独立的RTEXE启动。
  • 如果RUN_TIME_ENGINE值为False -应用程序是由开发计算机在交互模式下部署到RT端的。

相关信息

在实时操作系统上, Application Kind Property Node(应用程序类型属性节点)返回值始终为Embedded LabVIEW,原因是在实时操作系统上运行程序的前面板并不在该系统上运行,而只有程序框图运行在RT端。

在应用程序需要根据操作环境的不同运行不同代码时,可以利用这一属性节点。例如,通过该属性节点获取应用程序的当前文件路径。当应用程序作为VI或可执行文件运行时,获取当前VI路径的函数将返回不同的结果。使用此属性节点,可以根据差别进行恰当的处理。

本文是否有帮助?

无帮助