<b>用C++ Bulider在WIN.INI中保存信息</b>[VC/C++编程]
本文“<b>用C++ Bulider在WIN.INI中保存信息</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
目前很多软件把程序中需求的数据保存在注册表中,这样当用户装的软件越来越多时,导致注册表越来越宏大,简单使系统出错.当然,微软也倡议在注册表中保存数据,但当我们需求保存的数据不多时完好可以把数据保存在WIN.INI中,这样可以很便利地保护,实现办法相对来说对比简单.下面我以Borland C++ Builder为例来说说若何实现.
原理其实很简单,只需调用API的 WriteProfileString和GetProfileInt函数便可以了.这两个函数的原型是:BOOL WriteProfileString(LPCTSTR lpAppName,LPCTSTR lpKeyName,LPCTSTR lpString );
UINT GetProfileInt(LPCTSTR lpAppName,LPCTSTR lpKeyName,INT nDefault);
此中lpAppName指在WIN.INI中段的名字,即用[]括起来的字符串,lpKeyName指在这个段中每一个项目的名字,lpString指这个项目的值,即“=”后的数, nDefault为当GetProfileInt没有找到lpAppName和lpKeyName时返回的值,即缺省值,前者返回为布尔值(true 或 false),后者返回为无标记整形值.当在WriteProfileString函数中 lpKeyName 为空(NULL)时,则排除这个段的全部内容,lpString 为空时,则排除这一项目的内容,即这一行将清撤除.
下面举一例子来阐明这两个函数的用法.新建一个利用程序,在Form1上放两个Edit和三个Button,此中Edit的Text为空,三个Button的Caption辨别为“增添”、“查看”、“排除”.双击“增添”按钮加入下面代码:
WriteProfileString(“例子程序”,“项目”,Edit1→Text.c_str());
双击“查看”按钮加入以下代码:
unsigned int Temp;
Temp=GetProfileInt(“例子程序”,“项目”,100);
Edit2→Text=IntToStr(Temp);
双击“排除”按钮加入以下代码:
WriteProfileString(“例子程序”,NULL,NULL);
然后按F9键运路程序.
下来可以查验一下程序的精确性.在Edit1中输入数字,如“3265”,按“增添”按钮,这时运行“sysedit”来查看“WIN.INI”文件的最背面,可以看到加入了以下内容:
[例子程序]
项目=3265
此中“[]”和“=”是函数自动加上的.按下“查看”按钮,在Edit2中呈现“3265”,当按下“排除”按钮可排除增添的部份.经过查看可知程序已到达预期的目的.
爱好编程的朋友可以把上述办法利用到自己的程序中去,来到达保存数据信息的作用.当确切要把信息保存到注册表中,可以在C++ Builder中定义一个TRegistry类的对象来举行相关的操作,大概直接调用Windows的API函数.
以上是“<b>用C++ Bulider在WIN.INI中保存信息</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |