原创 LABVIEW在EXE程序间使用共享变量

2010-5-4 19:42 9840 10 15 分类: 测试测量

01 原实例代码02 修改后的源代码03 修改后生成的EXE


EXE程序间使用共享变量


原实例网址,好多朋友看了后,不知如何完成的,花了半天的时间研究了一下,将详细过程补充如下。


http://www.vihome.com.cn/bbs/viewthread.php?tid=8876&pid=74287&page=1&extra


 


 


1、  共享变量在底层运行,为了排除不必要的麻烦,尽可能用英文目录。


2、  共享变量设定:


没有特别的,都是默认的选项值:网络发布,但不用别名(因为只在本机验证,实际使用需要用别名方便其它电脑或程序调用)。


<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


点击看大图


3、  程序原理


发送VIPublisher.vi



点击看大图先输入变量库文件路径部署库,再循环写入布尔和数值到变量中,按stop中止程序。


因为变量库文件希望做到可以动态变化,所以程序做以下修改:将固定的路径变为动态路径,采用应用程序的类别属性来判定开发环境(LABVIEW)还是执行环境(EXE



点击看大图1)开发环境,变量库文件位于当前VI文件的目录下“Shared Variable Library.lvlib



点击看大图2)执行环境,变量库文件位于当前EXE文件的目录下的123目录下的“Shared Variable Library.lvlib


接收VISubscriber.vi



a37a935c-37c9-477a-a9eb-f250b356baf8.JPG


10ms的间隔循环读取变量中的值,显示在界面对应的制件中。


 


4、  配置生成执行文件规范


做好程序的规划,下面需要配置生成执行文件规范。


 


发送VIPublisher.vi


 A、选择同时发布变量库



点击看大图


B、设定变量库发布的默认路径(与VI中的动态路径保持一至)



点击看大图


C、绑定变量库的发布路径(这一步很重要,这一特性需要写入到EXE文件中。如果而直接手动新建123文件夹,再复制库文件,虽然EXE文件可以找到库文件,但执行会失败的。)


点击看大图



其它均默认,最后按“生成”,即可在生成的“Application”看到了123文件夹里的变量库文件。


2434d350-e609-4b67-b382-0a06cb0b0182.JPG92117706-f46c-4e6d-a96d-a3db7ba335a8.JPG845fc3d3-e557-48a4-bb76-ba78a66568c8.JPG


 



运行Shared Variable Publisher.exe,手动停止,没有出错,说明库文件发布成功。


1、  路径正确;


2、  手动停止,观察(3,已经确认停止


3、  观察(4,没有出错,表示库文件发布成功。



61c368db-d2a0-4027-9fb4-b5417876f64e.JPG 


 


接收VISubscriber.vi


 同样A-B-C步骤,完成后,进行生成,发现库文件大小发生了变化,由2.5KB变为3KB,与原文件一样大小。



eb730420-6f25-4f4c-8358-ff29c178659e.JPG


运行两个EXE文件,可以进行通讯,没有出错,实例试验成功。



点击看大图 


最后做两个实验:


(1)       EXE应用程序整个目录复制到C:\,再重命名为“看看”,验证动态路径配置是否成功,运行正常,说明成功。



点击看大图


(2)       将变量库文件替换为源代码中的变量库文件(压缩包中提供的),运行没有问题,但停止时会出错,说明只能在生成中用发布方式库文件。


点击看大图

PARTNER CONTENT

文章评论5条评论)

登录后参与讨论

用户1748589 2014-4-12 11:24

讲的很清楚,学习了!

用户377235 2014-2-12 13:35

是因为某些NI 的开机启动项被你关闭了到知道,用360开机启动优化一键恢复,然后重启电脑再试下应该就可以了

用户377235 2013-9-11 16:14

执行环境下的,库文件的路径有误!

lfp136_135267836 2012-3-30 22:56

是不是LABVIEW版本不对

用户375431 2011-8-17 11:51

朋友,我运行您的程序,出现以下错误是什么原因呢? 正在初始化... 计算依赖关系... 检查冲突项。该操作可能需要几分钟时间... 正在准备待下载项。该操作可能需要几分钟时间... 正在部署My Computer 正在部署Shared Variable Library.lvlib\\172.20.19.44\Shared Variable Library 部署失败 (错误: -1967362042, IAK_SHARED: (Hex 0x8ABC7006) 无法开始服务。). 部署完成但发生错误
相关推荐阅读
系统设计 2012-11-25 09:47
LABview 2012 生成程序问题解决
LABVIEW,生成程序,因为路径问题,需要重新拆分多次,才是真正的EXE文件目录。如下所述 http://blog.21ic.com/user1/1453/archives/2008/544...
系统设计 2011-03-22 14:41
一个很好的认识自己性格的网站
http://www.apesk.com/mbti/dati.asp#answer1juanbiao 可以了解一下自己的性格: 我的测试出来是: Psytopic分析:您的性格类型是“ISFJ”(内向...
系统设计 2011-02-18 12:04
研发管理之质量提升
研发的质量,涉及效率的项目管理和品质的可靠性试验。研发项目管理先是由研发主管亲力亲为,随公司的扩大,独立出专人或团队分管;而试验先是由研发工程师主导,随公司的扩大,独立出受QA主导的可靠性试验室(DQ...
系统设计 2011-02-18 08:41
02 研发管理之观念篇
(一)       一个关于研发管理的对话 有做研发管理的朋友问我: 朋:研发管理如何提升? 我:目前研发工作效率?质量?哪个更紧迫? 朋:质量,因为现在是到处救火! 我:那就先回答如何提升研发质量,...
系统设计 2011-02-16 18:06
01 企业变革之简要
企业是有生命力的,都具备生命周期,有起有伏,就像人的生老病死一样。我们要时刻掌握,懂得飓风过岗,伏草惟存;又懂得机会来临,奋力一博。方能从100万的小型企业锐变成4亿的中型企业,再顺利升级到15亿的大...
系统设计 2010-08-18 17:40
团队的一个目标——高效
    以十当一,是对团队的要求,也是目的。要高效就得如麦当劳中讲的:诚实与廉政,才会相互信用,然后君子协议,才达到高效协作的境界。    常玩的游戏,让一人向身后的团队躺下,就是观察他是否相信后面的...
EE直播间
更多
我要评论
5
10
关闭 站长推荐上一条 /3 下一条