labview编程技巧labview与INI文件

上传人:无*** 文档编号:93140724 上传时间:2022-05-19 格式:DOC 页数:6 大小:106.50KB
收藏 版权申诉 举报 下载
labview编程技巧labview与INI文件_第1页
第1页 / 共6页
labview编程技巧labview与INI文件_第2页
第2页 / 共6页
labview编程技巧labview与INI文件_第3页
第3页 / 共6页
资源描述:

《labview编程技巧labview与INI文件》由会员分享,可在线阅读,更多相关《labview编程技巧labview与INI文件(6页珍藏版)》请在装配图网上搜索。

1、文档供参考,可复制、编制,期待您的好评与关注! labview编程技巧-labview与INI文件在WIN95以前,WINDOWS还没有引入注册表的概念,WINDOWS是利用INI文件来存储计算机相关配置的,在API里,WINDOWS提供了丰富的API函数来操作INI文件,LV里也专门有个子类别封装了这些API函数,使用非常方便。, f2 f4 O0 0 a2 P6 X7 i6 A6 A+ l3 t/ I9 i% D% _7 LV使用INI文件来存储配置,应用非常广泛,生成执行文档后也自动生成一个INI文件。5 h6 X% B6 b( | T; n/ Q1 y! A& s6 i) J+ I-

2、x4 Y, JLV主要在下列情况下使用INI文件: I( v2 O2 . P9 a/ L6 F 9 p+ |7 ) S, |4 f# q存储前面板或者前面板特定控件的默认值和当前值& l$ h- M3 ?+ Q6 h8 * v. A. D3 P7 w0 e; K8 U3 Q* s. s8 i4 F) L存储本次应用的运行结果供下一次启动是调用! l) d, . X* o ( Z# h* Q) S: Y8 P存储硬件配置文件/ c$ l5 d$ 8 ! b5 * B6 $ r- + f存储硬件配置是非常重要的,比如一般的板卡都有16个数字输出,外部接继电器来控制外部设备,继电器是比较容易损坏的,

3、而通常16个继电器中是有备用的,如何在不改变软件和硬件的情况下把输出更改到另外的继电器上,这样,只需要简单地改动一下外部接线就可以了那,使用配置文件可以轻松实现。1 d0 u3 M/ z6 G8 L3 c: ! c$ f7 Z0 n6 n! E% bINI文件结构很简单,装了多操作系统的人都知道,WINDOWS本身有个BOOT.INI9 s2 Q# O/ I+ s6 C y+ _6 y; n! Wboot loader: 9 R0 x7 k _gtimeout=30& r3 K u( f% M# B5 e3 U0 N/ s% J9 Kdefault=multi(0)disk(0)rdisk(0

4、)partition(1)WINDOWS Q6 x G6 Q! B3 Uoperating systems& B* B: Q! ?8 S! n0 w$ Wmulti(0)disk(0)rdisk(0)partition(1)WINDOWS=Microsoft Windows XP Professional /noexecute=optin /fastdetect+ z% Y& yg7 ) I8 C! 7 M# Q* M9 j+ n2 e U7 v% O- Y# T* , k% v2 V& , + D3 M9 Hf! L: _6 d* M7 n( s. U. U y4 z我们看一下LV软件本身也

5、利用了INI文件来保存配置。: J4 |1 L$ r+ h5 e4 _ : A; a* x% E/ G! xwY5 p* rLabVIEW/ q# L: M- o M2 o9 g7 N& L. C- bserver.tcp.port=3363; 3 r$ u% z2 d: r. ; Userver.tcp.enabled=TRUE2 a! O. n5 |e# R$ i/ Userver.tcp.access=+127.0.0.1! E; V7 i- N. e# |- WIsFirstLaunch=False6 F* Z9 R) 1 D U* p2 , Z$ cPaletteHidddenCon

6、trolCategories_LocalHost=Modern;System;Classic;Control Design & Simulation;.NET & ActiveX;Addons;h6 T7 3 p: k j) PaletteHidddenFunctionlCategories_LocalHost=Programming;Measurement I/O;Instrument I/O;Vision and Motion;Mathematics;Signal Processing;Data Communication;Connectivity;Control Design & Sim

7、ulation;SignalExpress;Addons; v) R9 A n- D( V0 C. a4 c8 nmenuSetup=default A1 Z4 o3 J* _3 S1 T5 ; s; X, L q# EsaveFloaterLocations=True) K- C/ j/ l1 A8 9 l8 ffind.viListFlags=4 d y: n6 C1 z+ |/ T DLastErrorListSize=0,0,379,486+ o, : S5 f8 J: B4 H4 C4 z+ 2 Y( ApaletteStyle=NamedIcons1 Z3 k, p& X2 q*

8、i5 c; E0 cNoAdvice070=,CleanUpWire,FlatSequence, G& w7 K5 F/ % J qSaveChanges_ApplyToAll=True8 m! K! o: D# j/ M% O5 yPropPageBounds=398;181;884;6368 9 s0 A, U8 I: v: Z6 K2 ORecentFiles.pathList=C:Program FilesNational InstrumentsLabVIEW 8.5examplesDAQmxAnalog InMeasure Voltage.llbAcq&Graph Voltage-I

9、nt Clk.vi;C:Program FilesNational InstrumentsLabVIEW 8.5examplesDAQmxAnalog InMeasure Voltage.llbAcq&Graph Voltage-Ext Clk-Analog Ref.vi;C:Documents and SettingsAdministratorLocal SettingsTemporary Internet FilesContent.IE57M9NS8HFchart%20right%20to%20left1.vi;C:Documents and SettingsAdministratorMy

10、 Documentswindows_environment_variable_reader_writerWindows Environment Variable Reader Writer.vi;C:Documents and SettingsAdministratorMy DocumentsMDI.llbSimple MDI Demo.vi;D:Control 1.ctl;C:Program FilesNational InstrumentsLabVIEW 8.5vi.libtreeTree Sorter.llbJoin.vi;C:Program FilesNational Instrume

11、ntsLabVIEW 8.5vi.libUtilitynotifier.llbCreate Notifier.vi;C:Program FilesNational InstrumentsLabVIEW 8.5vi.libUtilitynotifier.llbWait On Notification.vi;C:Program FilesNational InstrumentsLabVIEW 8.5vi.libUtilityinputDevices.llbAcquire Input Data.vi+ VW# v, F# B4 eShowBufferAllocationsArrays=True3 j

12、! R+ F# i 5 X9 PShowBufferAllocationsClusters=True/ ; P ?2 m0 9 A& x s+ q* VShowBufferAllocationsStrings=False3 N8 A I. P) , j0 r8 w$ l3 3 WShowBufferAllocationsPaths=False8 s6 , # x6 S3 & sShowBufferAllocationsScalars=False2 & T0 W2 S# I! C2 G, dShowBufferAllocationsVariants=False0 7 k3 f2 a% s5 l:

13、 oShowBufferAllocationsOther=False g, D G( a7 R0 y S2 v$ G4 LNewDlgRecentMainTemplates.pathList=C:Program FilesNational InstrumentsLabVIEW 8.5templatesFrameworksDesignPatternsProducerConsumerEvents.vit/ k. X2 IqJ$ n$ NewDlgBounds=700;4800 T) a( G6 Q _- T$ # E8 2 DNewDlgRecentTemplates.pathList=2 9 v

14、- N0 T; g: U2 t7 CNewDlgLastSelected=8E4D36AD-F776-4C48-97C6-C1D85EFE889F; C. s8 E* 5 t% C4 j$ 6 NewDlgSmall=False) p! V: O, / p0 F2 x, UNewDlgCollapsed=77E350A8-F9AA-43FF-85E2-454279EBB9A7/Frameworks 3F7CF7A8-5E4D-4EDC-AA25-FA4A326988EF 8E4D36AD-F776-4C48-97C6-C1D85EFE889F3 7 P7 G2 g* S7 XSuperSecr

15、etPrivateSpecialStuff=True3 v* m2 V/ |- h: U, BTcolorHistoryItemA=00000BFF, J! l4 5 e( d) N! oRecentFiles.projectPathList=C:Documents and SettingsAdministratorMy Documentsxcontrol eventsxcontrol eventsXControl Events Project.lvproj;C:Program FilesNational InstrumentsLabVIEW 8.5examplesgeneralxcontro

16、lsDual Mode ThermometerSimple Dual Mode Thermometer XControl.lvproj;C:Program FilesNational InstrumentsLabVIEW 8.5exampleslvdscXControlsSpinnerSpinner.lvproj;C:Documents and SettingsAdministratorMy DocumentsLinked_List_ProjectLinked ListLinked_List_Project.lvproj;D:TESTUntitled Project 1.lvproj;C:Do

17、cuments and SettingsAdministratorMy DocumentsScripting_Tools_0.16.02Scripting ToolsScripting Tools.lvproj;C:Documents and SettingsAdministratorMy DocumentsIconEditor_85_V2.2IconEditor.lvproj;C:Documents and SettingsAdministratorMy Documents第一名_何凌_公司问题第一名 何凌 公司问题SrcVI company.lvproj1 O+ l3 f; / X; zP

18、rojectExplorer.ClassicPosition=143,53,543,415# p* I) o4 q U9 q; fcolorHistoryItemB=009A85748 R8 ) e8 e! ?Ap$ ? neditRecentPaths=C:Program FilesNational InstrumentsLabVIEW 8.5vi.libUtilitysysinfo.llb;C:Program FilesNational InstrumentsLabVIEW 8.5vi.libUtilitysemaphor.llb;C:Program FilesNational Instr

19、umentsLabVIEW 8.5vi.libUtilitymiscctls.llb;C:Program FilesNational InstrumentsLabVIEW 8.5vi.libUtilityGetType.llb;C:Program FilesNational InstrumentsLabVIEW 8.5vi.libUtilityinputDevices.llb;C:Program FilesNational InstrumentsLabVIEW 8.5vi.libUtilitynotifier.llb;C:Program FilesNational InstrumentsLab

20、VIEW 8.5vi.libtreeTree Sorter.llb( C! K1 Y# R: _. B3 fLLBMgr_ActivePlugins=6 h+ V( X% |9 _x3 qLLBMgr_RecentPath=C:Documents and SettingsAdministratorMy DocumentsMDI.llb A; J H, N$ |( tcolorHistoryItemC=00FF8242 O& u. _% dautoerr=2( c 4 e N( OcolorHistoryItemD=00000FDC) H# O) T9 Y _colorHistoryItemE=

21、003100DC m* ?+ . j H+ RcolorHistoryItemF=00FFFFFF0 Y8 O- , b; c5 * colorHistoryItemG=00FF3D006 s% N* s% _& S ycolorHistoryItemH=000F00DC( z: e: M, e# / N% CHcolorHistoryItemI=004AFF420 I d; F5 h7 E5 4 AcolorHistoryItemJ=00C88E00; q& ?& Y+ U7 a T% c3 McolorHistoryItemK=000025FF4 r! JE3 F$ C4 r$ d% s!

22、 MexoticControls=TRUE- ! Y0 % v& |5 r+ O( F) |) qNoAdvice080=,ClassBrowser, t$ q. d$ 9 d& 9 A1 lSuperPrivateScriptingFeatureVisible=True l/ c. Q6 X+ b( & : uSuperSecretPrivateSpecialStuff=True0 U F* S. c4 s( e8 d y& NsuperPrivateScriptingFeatureSichtbar=True 9 J) Mp# O$ E( _( o, sFPFont=0 182 t& ( x

23、 |! w K% hBDFont=0 18 m; y H3 T$ zVtoolPaletteLoc=494,22,645,1009 j& U! l# G+ f5 W1 hLVLibraryThemeColor=006699FF# K. - X3 T6 8 t, r E) L+ Z; e1 v: a$ Wini文件非常简单,是文本文件,可以用WINDOWS记事本直接打开,组成结构是一个简单的树型结构,说明如下:; z( l2 N2 TQ9 m t6 O! F, . + C1 B5 rsection1! 8 p. t0 B0 Q9 Q) , S* Vm0 w! Z; t6 I% u; S W/ U

24、0 okey1_section1=VALUE& v$ d) d! F$ lkey2_section2=VALUE7 e$ D$ ?: Q: J+ J% Ykey3_section3=VALUE( a# z( c2 J9 W1 A5 |, P, b$ % k2 u! e# / q3 ysection2* C! b0 F5 U1 Zkey1_section2=value* n7 B, h m! I3 S( f! u2 tkey2_section2=value5 / q! n& C, x8 Q: ukey3_section2=value- D, s8 R9 a( S7 f( L( 9 N R2 j&

25、 h5 I+ q5 G; 2 a& 4 d0 j O3 b可以看出结构非常简单,每个INI文件又一个或者多个SECTION组成,每个SECTION又一系列键和键值组成,值的类型可以是BOOLEAN ,DOUBLE,I32,U32,STIRNG,PATH等等! c/ z8 # ?1 p/ P* h) 5 V+ $ g1 * m( ZLV专门提供了一组节点来处理INI文件:- x$ H- m b4 _* z) 4 j$ _1 B. b: z+ q7 x! kI: J2 f; k6 N5 Q- H# o3 w1 G9 p. Z$ j) kB8 x( a上排的是操作INI的节点,下排的是读取INI本身

26、信息的节点# i8 F* E3 i; j6 Y2 E5 r- ; W3 V) N8 n2 pc8 A% 操作INI节点包括:打开,读键值,写键值,删除键值,删除分类(SECTION),关闭。0 u( P. , g# N5 2 g: q- 信息节点包括: 取得所有分类中的键名称,取得所有分类名称,判断文件是否是配置文件。6 1 l2 ) u8 h: v4 h( u$ - 4 / q* q3 QYf2 F) p% U7 X) n* 具体操作和其他文件操作类似,打开(注意路径问题)-读或者写-关闭/ v( O. 3 y- m8 h8 I* t 8 G6 N6 Q# n. W# I8 a2 U$ yL

27、V提供的INI节点非常基本,数据类型也是基本的数据类型,我们实际工作更常用的是数组和簇类型,OPENG为我们作好了这些,并且是开放原代码,看看它提供的节点:; I- p2 J! w. c7 q+ Z! t& Z* k g5 E2 5 k# D! K8 P# u) B. G9 3 m8 q7 b& Bb& C/ K C4 Z. b3 Q这里的OPEN和CLOSE就是LV本身提供的节点,其它的分别介绍一下:) O6 l% k! L) i% * z, o( i0 q. / T$ I2 k. pERead INI Cluster: 读取簇的配置* N$ ?7 i# _1 k0 z8 vWrite IN

28、I Cluster: 写簇的配置$ c# E0 * h& q) b% o4 Y2 n8 t! u! Z2 L) D3 O这两个VI读写INI时,SETION部分就是簇的名称7 g9 m* z4 5 : T$ a4 _ V% tRead Section Cluster:读取指定SECTION下的簇配置3 l8 N3 T5 t) C/ y5 t$ C! mWrite Setion Cluster:写入指定SECTION的簇配置6 p/ X& N2 m- x3 C, j这两个VI同上面的类似,但是可以指定SETION名称,这样可以在同一SECTION下,写入或者读取多个CLUSTER配置。4 I6

29、O# ?- N6 G4 m) N6 I, p5 _* G+ d; K2 Rp7 u# J% PRead Panel: 读取指定的控件面板(恢复上次值): W- j8 X) & G3 iq, m$ XsWrite Panel:写入指定的VI的控制面板当前值到配置文件(供下次调用). R1 j: G/ o A# f8 y$ r这两个VI的输入是VI参考,既可以写入或者读本身,又可以在一个VI中来操作另一个VI% L, ; o; w. _ S1 ?& F( R) J$ m/ u0 O b# k4 z8 9 j3 B7 4 a! Y4 r5 x, _$ uREAD KEY:可以读取特定SECTION下特定CLUSTER中的元素的键值$ I, 9 F& V1 WWRITE KEY:写入特定SECTION下特定CLUSTER中的元素的键值7 H# a+ m, z/ R# L- J/ l/ V9 * C + p# 0 h$ |: i) G8 w0 J: # e0 A2 / m: P+ 2 S4 P看一下a.ini的内容:- _& c- 2 X* g. u6 / 6

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!