0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何才能获取LabVIEW程序中的传递参数呢?

jf_xutpKvFS 来源:LabVIEW QT 修炼之路 作者:Retry 2023-10-11 09:26 次阅读

LabVIEW:2015

有些场景下,我们用LabVIEW开发的应用程序,需要通过命令行来调用,并向该应用程序传递参数,那么在程序中如何才能获取这些参数呢?

比如下图向test.exe应用程序传递4个参数(“true", "true", "false", "true”),那么对于test.exe应用程序而言,它如何才能获取到呢?

9c6593c8-677c-11ee-939d-92fbcf53809c.png

编写一个简单的例子来演示,通过传入参数来控制4个LED的亮灭,如下图所示:

9c777322-677c-11ee-939d-92fbcf53809c.png

想从命令行中获取参数其实是有一个属性节点的,如下图所示:

9c98425a-677c-11ee-939d-92fbcf53809c.png

帮助的说明很清楚如下图所示:

9cb27a58-677c-11ee-939d-92fbcf53809c.png

需要注意的是返回的参数数组中,第一个是启动的可执行文件的名称,另外如果用户定义的命令行参数带有双引号,返回时则不包含引号。

所以程序框图实现代码如下图所示:

9cc9ecec-677c-11ee-939d-92fbcf53809c.png

那么是不是这样就够了呢?当然不,还有很关键的一个设置,在打包生成exe时,需要在高级选项中勾选“Pass all command line arguments to application”, 如下图所示:

9ce09640-677c-11ee-939d-92fbcf53809c.png

点击Build,测试功能正常,如下图所示:

9cf8bd06-677c-11ee-939d-92fbcf53809c.png

问题延伸:用LabVIEW开发了一个应用程序(比如文本编辑器LVEditor.exe),那么如何实现双击txt文件时,自动使用LVEditor.exe打开且正确读取呢?

想双击时自动使用我们开发的应用程序LVEditor去打开txt文件,这个简单,设置下默认的打开方式即可,但是想正确地读取里面的内容如何才能做到?

其实也简单,当我们双击打开一个文件时,与命令行调用类似,它会将该文件的路径以参数的形式传递给要执行的应用程序,所以你应该明白该如何实现了。

下面也编写一个简单的例子来演示,双击打开一个txt文件能够正确读取其内容显示到字符串控件中,如下图所示:

9d02c4f4-677c-11ee-939d-92fbcf53809c.png

正确设置以后打包生成可执行文件,并将txt文件默认的打开方式设置为使用LVEditor.exe,如下图所示:

9d24e016-677c-11ee-939d-92fbcf53809c.png

双击test.txt文件,运行效果符合预期,如下图所示:

9d3af4e6-677c-11ee-939d-92fbcf53809c.png








审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    237

    文章

    22450

    浏览量

    645891
  • LabVIEW
    +关注

    关注

    1918

    文章

    3619

    浏览量

    317004
收藏 人收藏

    评论

    相关推荐

    LabVIEW多线程编程数据传递教程

    很多时候在一个VI的不同线程或者不同VI的不同线程中需要有一些交互——这些线程并不能完全独立运行,需要一定的数据通信才能正确执行,这时就需要在编程时使用LabVIEW提供的数据通信与同步的一些机制,使需要传递的数据可以在多个线程
    的头像 发表于 11-24 10:05 2336次阅读
    <b class='flag-5'>LabVIEW</b>多线程编程数据<b class='flag-5'>传递</b>教程

    LabvIEW如何编写程序能够手动设置极品模板匹配VI的模板

    LabvIEW如何编写程序能够手动设置极品模板匹配(golden template)VI的模板?我试了好几次,只能先用视觉助手先试用极品模板匹配,获得模板,而且
    发表于 09-22 10:39

    怎样才能labVIEW调用运行一次VBAI程序

    程序?如何把他们整合到一起并打包生成执行程序?转换成labVIEW代码么?labVIEW视觉模块
    发表于 01-13 20:08

    labview调用halcon程序如何传入参数

    各位大神,labview调用halcon的hdev程序时,如何给halcon传入参数?比如传入图像,labview如何获取这个传入
    发表于 05-12 22:43

    Labview使用操作者架构时,同一操作者的私有方法之间如何传递参数

    Labview使用操作者架构时,同一操作者的私有方法之间如何传递参数?是否每个方法都需要创建一个消息
    发表于 09-09 19:24

    ​​​LabVIEW DLL传递一个二维数组报错

    DLL,其参数包含一个2维数组。 注意:在其他应用(比如Matlab®)当需要为LabVIEW DLL传递一个二维数组时,同样也必须保证在调用之前,初始化处理
    发表于 02-19 20:44

    如何才能在51系统下使用类似printf这样的可变参数的子函数

    增加3个字节的地址,这样就没用办法使用“...”,来传递参数了,如何才能在51系统下使用类似printf这样的可变参数的子函数
    发表于 10-30 08:27

    如何获取其它程序的命令行参数

    开发环境:VC6 Windows XP 测试环境:WindowsXP 我们都知道,在程序获取命令行参数很简单,WinMain函数会以参数的形式
    发表于 10-14 09:24 1次下载

    Labview之信号传递后波形

    Labview之信号传递后波形,很好的Labview资料,快来下载学习吧。
    发表于 04-19 10:56 0次下载

    函数参数传递的原理

    参数传递,是在程序运行过程中,实际参数就会将参数传递给相应的形式
    的头像 发表于 03-02 11:41 6928次阅读
    函数<b class='flag-5'>参数</b><b class='flag-5'>传递</b>的原理

    Labview风力情况获取

    Labview写的一个获取天气的小程序程序中只显示了风力,其余的天气情况也可以得到。
    发表于 05-21 11:23 23次下载

    参数程序参数传递过程

    一份程序中建立多个子程序,每个子程序完成相对比较独立的功能。而子程序也是围绕主程序的要求,并且还根据主
    的头像 发表于 10-17 09:50 1889次阅读

    KUKA机器人:将参数传递到子程序或函数中V1.28版

    从一个主程序中可以将参数传递到局部或全局子程序和函数中。
    的头像 发表于 01-31 13:43 1570次阅读

    LabVIEW命令行调用exe传入的参数如何获取

    有些场景下,我们用LabVIEW开发的应用程序,需要通过命令行来调用,并向该应用程序传递参数,那么在程序
    发表于 10-11 09:28 1167次阅读
    <b class='flag-5'>LabVIEW</b>命令行调用exe传入的<b class='flag-5'>参数</b>如何<b class='flag-5'>获取</b>

    labview鼠标坐标怎么获取

    获取LabVIEW中鼠标坐标的方法实际上非常简单。在LabVIEW的Block Diagram或Front Panel中,可以使用以下方法来获取鼠标的坐标: 使用鼠标坐标节点
    的头像 发表于 01-07 17:24 1543次阅读