解决方案
访问VI的当前目录有两种不同的方法:
当前VI路径函数 (
Current VI's Path node)和
应用程序目录函数 (
Application Directory node)。这两个函数返回的确切的文件路径则根据调用它们的环境而有所不同。
- 当前VI路径函数返回包含VI名称的完整路径。该路径根据VI是在LabVIEW开发环境中运行还是在独立应用程序中运行而有所不同。 LabVIEW将所有与独立应用程序关联的VI包装到一个额外的层中,这实际上是可执行文件本身。
如果你创建了一个名为Application.vi位于C:\的VI,在LabVIEW开发环境中,当前VI路径函数将返回C:\Application.vi。如果将相同的VI构建到名为MyApplication.exe的独立应用程序中,则当前VI路径函数将返回C:\MyApplication.exe\Application.vi 。
- 应用程序目录函数在LabVIEW开发环境中被调用时,返回包含VI的文件夹或目录的路径,而不是VI本身路径,而在独立应用程序中被调用时,应用程序目录函数返回包含独立应用程序的文件夹的路径而不是该应用程序下的VI路径。
对于位于C:\中的VI,应用程序目录函数只返回C:\ 。必须使用构建路径函数将应用程序或VI名称附加到路径末尾。您可以附加Application.vi以访问LabVIEW开发环境中的VI,或者附加MyApplication.exe/ Application.vi以访问独立应用程序上的VI。