LabVIEW包含预定义的命令行操作,可实现诸如编译文件、生成应用程序和运行VI等任务的自动化。

表 24. 预定义的LabVIEWCLI操作
命令 说明
MassCompile 批量编译指定目录中的文件。
ExecuteBuildSpec 使用指定生成规范中的设定生成应用程序或库,并返回输出文件的路径。
RunVI 使用预定义连线板接口运行VI,并返回输出或错误信息。
CloseLabVIEW 关闭LabVIEW,无提示。
CreateComparisonReport 生成两个指定VI的VI比较报告。
RunVIAnalyzer 用于VI Analyzer工具包。LabVIEW VI Analyzer工具包中运行指定的VI分析器任务,并将测试报告保存到指定位置。
RunUnitTests 用于Unit Test Framework工具包。在LabVIEW Unit Test Framework工具包中对指定文件运行测试,并将JUnit文件保存到指定位置。

也可在LabVIEW中创建自定义命令行操作

MassCompile

批量编译指定目录中的文件。

表 25. MassCompile参数列出了该操作可用的参数。

表 25. MassCompile参数
参数 必需或可选 说明 默认
-DirectoryToCompile 必需 要编译的VI的位置。
-MassCompileLogFile 可选 日志结果的文件路径。 临时位置的路径。
-AppendToMassCompileLog 可选 指定是否将结果添加到日志文件的布尔值。 false:如果指定的日志文件已经存在,LabVIEW将覆盖现有日志文件。
-NumOfVIsToCache 可选 批量编译过程中,允许保留在内存中的VI的数量。
备注 缓存VI可大幅减少批量编译的执行时间,因为编译顶层VI时LabVIEW无需加载已缓存的VI。但是,缓存VI可消耗更多的系统内存。如果批量编译的文件夹中包含不同子文件夹中的同名文件和不属于库的VI,则VI缓存可能会导致交叉链接
0
-ReloadLVSBs 可选 指定是否忽略VI中的CIN并允许应用程序搜索它们的布尔值。

大量CIN经重新编译,需重新加载时,可设置该参数。

false

如需在用于LabVIEW的CLI运行MassCompile,请使用以下语法执行命令:

LabVIEWCLI -OperationName MassCompile -DirectoryToCompile <directory of file(s)> -MassCompileLogFile <path to log file> -AppendToMassCompileLog <true or false> -NumOfVIsToCache <number of VIs to cache> -ReloadLVSBs <true or false>

例如:

LabVIEWCLI -OperationName MassCompile -DirectoryToCompile "C:\temp" -MassCompileLogFile "C:\temp\log.txt" -AppendToMassCompileLog true -NumOfVIsToCache 0 -ReloadLVSBs false

ExecuteBuildSpec

使用指定生成规范中的设定生成应用程序或库,并返回输出文件的路径。

表 26. ExecuteBuildSpec参数列出了该操作可用的参数。

表 26. ExecuteBuildSpec参数
参数 必需或可选 说明 默认
-ProjectPath 必需 包含程序生成规范的LabVIEW项目(.lvproj)文件的路径。
-TargetName 可选 包含程序生成规范的终端。 我的电脑
-BuildSpecName 可选 项目浏览器窗口中程序生成规范下显示的程序生成规范名称。 空字符串:用于LabVIEW的CLI将生成指定终端下的所有程序生成规范。
-BuildDirectory 可选 生成输出文件所在的目录路径。指定后,程序生成输出将指向该位置,而不是程序生成规范中定义的目标位置。需要同时指定-TargetName-BuildSpecName 程序生成规范中定义的目标路径。

如需在用于LabVIEW的CLI运行该操作,请使用以下语法执行命令:

LabVIEWCLI -OperationName ExecuteBuildSpec -ProjectPath <path to project> -TargetName <name of target> -BuildSpecName <name of build specification> -BuildDirectory <path to output directory>

例如:

LabVIEWCLI -OperationName ExecuteBuildSpec -ProjectPath "C:\temp\test.lvproj" -TargetName "My Computer" -BuildSpecName "My DLL" -BuildDirectory "C:\builds\output"
使用-BuildDirectory参数时,请考虑下列事项:
  • 更改应用程序或库的程序生成目标时,使用-BuildDirectory参数不会永久修改程序生成规范。
  • 必须同时指定-TargetName-BuildSpecName才能使用-BuildDirectory。如参数丢失,LabVIEWCLI将返回错误。
  • -BuildDirectory参数仅覆盖目标目录支持目录路径。使用-BuildDirectory不会影响程序生成规范中定义的自定义目录。这些目录仍保留在原始配置的位置。
  • -BuildDirectory参数适用于应用程序(EXE)、DLL、源代码发布、.NET互操作程序集、打包项目库、ZIP、安装程序和程序包(NIPKG/IPK)生成规范。
  • -BuildDirectory参数不支持FPGA程序生成规范。

RunVI

使用以下连线板接口运行VI,并返回输出或错误信息。

有三个接线端的LabVIEW VI连线板。

接线端 数据类型 说明

LabVIEW VI连线板的第一个接线端标注。

字符串控件

表示字符串数据类型的LabVIEW控件接线端。

VI的命令行参数。

LabVIEW VI连线板第二个接线端标注。

32位有符号显示控件

表示32位有符号整型数值数据类型的LabVIEW控件接线端。

VI返回的用于LabVIEW的CLI退出代码。

LabVIEW VI连线板的第三个接线端标注。

字符串显示控件

表示字符串数据类型的LabVIEW控件接线端。

要包含在用于LabVIEW的CLI控制台或日志文件中的输出或错误信息。

表 27. RunVI参数列出了该操作可用的参数。

表 27. RunVI参数
参数 必需或可选 说明 默认
-VIPath 必需 要在LabVIEW中运行的VI的路径。如果VI的连线板与预定义的接口不匹配,则用于LabVIEW的CLI返回错误。
<VI的命令行参数> 可选 VI输入数组的元素。使用空格分隔元素。

如需在用于LabVIEW的CLI运行该操作,请使用以下语法执行命令:

LabVIEWCLI -OperationName RunVI -VIPath <VI path> <first element of array> <second element of array>...

例如:

LabVIEWCLI -OperationName RunVI -VIPath "C:\Users\inlabview.APAC\Documents\DemoProject\RunVI.vi" 101 202

CloseLabVIEW

关闭LabVIEW,无提示。

备注 如果在运行该操作时VI是打开的,则任何未保存的更改都将丢失。运行该操作前,请确保保存所有更改。

该操作没有任何参数。

如需在用于LabVIEW的CLI运行该操作,请执行以下命令:

LabVIEWCLI -OperationName CloseLabVIEW

CreateComparisonReport

比较两个指定的VI并输出包含比较操作结果的HTML、XML、Word或文本报告。

表 28. CreateComparisonReport参数列出了该操作可用的参数。
表 28. CreateComparisonReport参数
参数 必需或可选 说明 默认
-vi1 必需 正在比较的第一个VI的名称或路径。
-vi2 必需 正在比较的第二个VI的名称或路径。
-reportType 可选 输出报告的所需文件类型。该参数支持下列值:
  • HTML:生成带有外部图像和样式文件的HTML格式报告。
  • HTMLSingleFile:生成带有嵌入式图像和样式定义的HTML格式报告。
  • MicrosoftWord:生成Microsoft Word格式的报告。
    备注 要在您的计算机上使用此选项,必须安装Microsoft Word。
  • PlainText:生成纯文本格式的报告。
  • XML:生成带有外部图像的XML格式报告。

如未指定此参数,则会根据为-reportPath提供的值进行推断。

HTMLSingleFile
-reportPath 必需 输出报告的名称或路径。
-o 可选 覆盖指定报告目录中的现有报告和支持文件(如有)。
-c 可选 如指定报告路径不存在,则为其创建一个新目录。
-nofp 可选 从比较报告中排除前面板差异。
-nofppos 可选 从比较报告中排除前面板位置差异。
-nobd 可选 从比较报告中排除程序框图差异。
-nobdcosm 可选 从比较报告中排除程序框图的外观差异。
-noattr 可选 从比较报告中排除VI属性差异。
-d 可选 比较不含依赖关系的指定VI。

可为vi1vi2选择任意VI。vi1不一定是基文件,vi2不一定是基文件的修改。在比较报告的范围内:

  • vi1是分配给初始状态的VI(来自vi1中的状态)
  • vi2是分配给后状态的VI(vi2中的状态)

如需在用于LabVIEW的CLI运行该操作,请使用以下语法执行命令:

LabVIEWCLI -OperationName CreateComparisonReport -vi1 <name or path of first VI> -vi2 <name or path of second VI> -reportType <file type of report> -reportPath <name or path of output report>

例如:

LabVIEWCLI -OperationName CreateComparisonReport -vi1 "firstVI.vi" -vi2 "secondVI.vi" -reportType "HTMLSingleFile" -reportPath "report.html"

RunVIAnalyzer

LabVIEW VI Analyzer工具包中运行指定的VI分析器任务,并将测试报告保存到指定位置。

表 29. RunVIAnalyzer参数列出了该操作可用的参数。

表 29. RunVIAnalyzer参数
参数 必需或可选 说明 默认
-ConfigPath 必需 包含分析时要使用的VI分析器任务设置的配置文件路径。可使用通过VI Analyzer或VI Analyzer VI保存的配置文件。此外,也可指定要分析的VI、文件夹或LLB。如果指定配置文件以外的文件,则VI将对该文件运行所有VI分析器测试。
-ReportPath 必需 报告文件的路径。
-ConfigPassword 可选 配置文件的密码(如有)。 空字符串
-ReportSaveType 可选 报告或结果文件的格式。该参数的值必须是以下值之一:
  • ASCII
  • HTML
  • RSL文件
ASCII
-ResultsPath 必需 报告文件的路径。如路径为空字符串,LabVIEW将忽略该参数。
备注 该参数区分大小写。

如需在用于LabVIEW的CLI运行该操作,请使用以下语法执行命令:

LabVIEWCLI -OperationName RunVIAnalyzer -ConfigPath <path to configuration file> -ReportPath <path to report> -ReportSaveType <file type of report> -ConfigPassword <password of configuration file>

例如:

LabVIEWCLI -OperationName RunVIAnalyzer -ConfigPath "C:\temp\test.viancfg" -ReportPath "C:\temp\output.html" -ReportSaveType "HTML" -ConfigPassword "abc"

RunUnitTests

在LabVIEW Unit Test Framework工具包中对指定文件运行测试,并将JUnit文件保存到指定位置。

备注 要运行此操作,必须使用JKI VI Package Manager(VIPM)软件安装UTF Junit报告库。

表 30. RunUnitTests参数列出了该操作可用的参数。

表 30. RunUnitTests参数
参数 必需或可选 说明 默认
-ProjectPath 必需 项目文件路径。
-JUnitReportPath 必需 输出JUnit文件的路径。

如需在用于LabVIEW的CLI运行该操作,请使用以下语法执行命令:

LabVIEWCLI -OperationName RunUnitTests -ProjectPath <path to project file> -JUnitReportPath <path to output JUnit file>
例如:
LabVIEWCLI -OperationName RunUnitTests -ProjectPath "C:\temp\test.lvproj" -JUnitReportPath "C:\temp\test.xml"