|
我正使用TestStand 4.1.1(或更早版本)和LabVIEW 2010,当我使用TestStand Deployment Utility创建一个部署,当创建完成之后,我得到以下错误:
Aborted
***************************************
Error: The following VIs are broken:
<VI Path> while Processing VIs...
++++++++++++++++++++++++++++++++++++++
中止:
***************************************
错误: 以下VIs被破坏:
<VI 路径> while Processing VIs...
++++++++++++++++++++++++++++++++++++++
我注意到当我在LabVIEW中打开该错误中所提到的部署的VI时,它确实被破坏了,但是当我在LabVIEW中打开原始的VI是没有被破坏的。这些VI为什么在部署过程中会被破坏?
该问题是由在 LabVIEW 2010中添加的内联子VI特性的兼容问题造成的。该选项能够用来减少内存开销和提高性能。为了将内联子VI链接到调用它的VI,您必须在 VI Properties Execution(VI属性>>执行)页面中,取消选择 “允许调试”和 “允许自动错误处理”两个选项,然后选择“重入执行”选项,否则子VI会被破坏。
在创建部署时,TestStand Deployment Utility 使用内部组件来对VI打包,该内部组件在TestStand 4.1.1和前期版本中错误地设定每一个将被打包的多态VI和子VI的 VI Properties Execution(VI属性>>执行)页面中“允许调试”选项,导致任何有Inline subVI into calling VIs(内联子VI到调用VI)选项的多态VI和子VI都会被破坏。
NI-DAQmx 9.2.3驱动为某些驱动VI(例如DAQmx Read and DAQmx Write VI即DAQmx读取VI和DAQmx写入VI)勾选了Inline subVI into calling VIs (内联子VI到调用VI)选项,因此,如果您在TestStand 4.1.1和前期版本中TestStand Deployment Utility来发布调用了DAQmx读取或者DAQmx写入的LabVIEW 2010 VIs ,也会遇到这样的问题。
您可以通过取消每一个子VI的Inline subVI into calling VIs (内联子VI到调用VI)选项来解决该问题。如果您无法使用工作区的选项,请联系National Instruments Support.(美国国家仪器技术支持)
注意:由于对TestStand Deployment Utility内部组件的升级,这个问题在TestStand 4.2和更新的版本中已经不存在了。
|