问题提出
使用LabVIEW编写应用程序时,相信很多小伙伴遇到过这样的问题,在VI程序中涉及到路径的问题时,比如在程序开始运行时,需要自动读取当前目录下某个文件的内容作为参数的初始配置,或者自动加载当前目录下某个子文件夹下所有的图片文件作为图标使用时,在这种情况下,我们一般使用LabVIEW中提供的“当前VI路径”函数获取当前程序的完整路径,进而得到当前程序所在的文件夹路径,在程序的开发环境下即生成EXE程序前,程序运行一切良好,但是当生成可执行的EXE程序后再运行,会提示路径不正确,找不到待读取或加载的文件。
这是怎么回事呢?
问题分析
其实,不同于其它的编程语言,在LabVIEW中使用“当前VI路径”函数获取当前程序的完整路径时,生成EXE前后其返回值是不一样的。
下面通过一个例子进行说明,例子前面板如下图所示:
这个程序比较简单,就是在前面板上显示获取到的当前程序的完整路径和其所在的文件夹,其程序框图如下所示:
在上面程序框图中,使用“当前VI路径”函数获取当前程序的完整路径,然后使用“拆分路径”函数获取得到当前程序所在的文件夹。
将该程序保存在“E:\test”目录下,然后生成EXE程序“Main.exe”,将该EXE程序也放在“E:\test”目录下。
上面前面板图中显示了生成EXE程序前的运行情况,运行结果一切正常,但生成EXE后运行“Main.exe”程序时&