网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.本人写的迷宫,不过知道这样才能.
.指针与函数的关系.
.C++ Builder 预定义动.
.用BCB5的打包程序打包BCB6.
.改变打开对话框中"打开&quo.
.C++ Builder创建组件探密.
.DriverStudio工具包介绍.
.国家计算机二级考试程序修改与设.
.深度探索C++对象模型(2).
.TCanvas类.
.在Tc2.0下的鼠标控制程序.
.1.4 Turbo C 2.0的安装和启动.
.c程序设计教程7-16号习题,见笑了.
.用C++产生QL*Loader各类文件.
.C语言初学者入门讲座 第十二讲 结.
.双向链表的排序.
.VC中借助DirectDraw实现水波的模.
.用C++ Builder编写Tray程序.
.用C++品尝Vista美味:界面的毛玻.
.第 1 章 贪婪算法.

用CB在WIN.INI中保存信息

发表日期:2008-3-8



  现在许多软件把程序中需要的数据保存在注册表中,这样当用户装的软件越来越多时,致使注册表越来越庞大,轻易使系统出错。当然,微软也建议在注册表中保存数据,但当我们需要保存的数据不多时完全可以把数据保存在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类的对象来进行相关的操作。
上一篇:用C实现exp函数 人气:1220
下一篇:用HOOK函数自动关闭IE广告窗口 人气:780
浏览全部C/C++的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐