用INI文件进行程序设置

ZDNet软件频道 时间:2003-11-25 作者:ZDNet China |  我要评论(1)
本文关键词:vbtips
Windows程序和操作系统用预制(INI)文件来保存程序设置以及其它信息。当Windows 98出现之后,注册表接管了这项任务。然而,有些时候我们用INI文件来存储程序设置信息显得更为合适。
本文译自Builder.com,未经许可请勿转载

历史上,Windows程序和操作系统用预制(INI)文件来保存程序设置以及其它信息。当Windows 98出现之后,注册表接管了这项任务。然而,有些时候我们用INI文件来存储程序设置信息显得更为合适。

INI文件是一种分为若干段的文本文件;每一段都包含若干了“关键字-值”对。这里有一个例子:

[section1]
key1 = value1
key2 = value2
[section2]
key1 = value1
key2 = value2

INI文件的每个条目都可以通过它所在的段和关键字名来识别出来。你的程序可以用两个API函数来读写INI文件:

Private Declare Function GetPrivateProfileString _
  Lib "kernel32" Alias "GetPrivateProfileStringA" _
  (ByVal lpApplicationName As String, _
  ByVal lpKeyName As Any, ByVal lpDefault As String, _
  ByVal lpReturnedString As String, ByVal nSize As Long, _
  ByVal lpFileName As String) As Long

Private Declare Function WritePrivateProfileString _
  Lib "kernel32" Alias "WritePrivateProfileStringA" _
  (ByVal lpApplicationName As String, ByVal lpKeyName _
  As Any, ByVal lpString As Any, ByVal lpFileName As _
  String) As Long

这两个函数的返回值都是0或者1,0表示操作失败,1表示成功。在某些情况下,例如你试图写某个目录下的INI文件,而你没有对该目录进行写操作的权限,那么就会操作会失败。这两个函数的参数如下:

  • LpApplicationName:被读写段的段名。
  • LpKeyName:被读写的条目的关键字名。
  • LpString:写入INI文件的值(当进行写操作时)。
  • lpDefault::段中的默认返回值以及(或者)读操作时关键字未找到时的默认返回值。
  • lpReturnedString:从INI文件读到的数据(当进行读操作时)。
  • nSize:返回的最大字符数。设置为 lpReturnedString的长度。
  • lpFileName:INI文件的文件名,包括完整的路径名。

当你对INI文件进行写操作,如果段和关键字已经存在时,那么当前值就会被新写入的值所替代;如果段或者关键字不存在,则创建新的段或者关键字。当进行读操作时,你要么得到保存在INI文件中的条目值(当你读取的条目存在时),要么得到传递给GivePrivateProfileString参数的默认值(当你读取的条目不存在时)。如果INI文件不存在,那么也返回默认值。

 


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134