2?与初始化有关的API函数
Windows95中的动态链接库Kernel.exe包含了六个函数,可以对INI文件进行操作,其中GetProfileInt、GetPrivateProfileInt、GetProfileString和GetPrivateString四个函数可以从INI文件中基于应用程序名和关键词的行获得信息。WritePrivateProfileString和WriteProfileString两个函数可以在INI文件中修改或创建文件中的有关行。
在VB应用程序中应按下面的方式在全局模块中进行声明。
Declare Function GetProfilelnt Lib ″Kernel″(ByVal lpAppName As String,ByVal lpKeyName As String,ByVal nDefault As Integer) As Integer
Declare Function GetProfileString Lib ″Kernel″(ByVal lpAppName As String,lpKeyName As Any,ByVal lpDefault As String,ByVal lpReturnedsring As String,ByVal nSize As lnteger) As Integer
Declare Function WriteProfileString Lib ″Kernel″(ByVal lpApplicationName As String,lpKeyName As Any,lpString As Any) As lnteger
Declare Function GetPrivateProfilelnt Lib ″Kernel″(ByVal lpApplicationName As String,ByVal lpKeyName As String,ByVal nDefault As lnteger,Byval lpFileName As String) As lnteger
Declare Function GetPrivateProfileString Lib ″Kernel″(ByVal lpApplicationName As String,lpKeyName As Any,ByVal lpDefault As String,ByVal lpReturnedString As String,ByVal nSize As String,ByVal nSize As Integer,Byval lpFileName As String) As Integer
Declare Function WriteProfileString Lib ″Kernel″(ByVal lpApplicationName As String,lpKeyName As Any,lpString As Any) As lnteger
其中:lpApplicationName$为应用程序名称
lpKeyName$为关键词
nDefault%为关键词指定的缺省值
lpFileName$为初始化文件名称
lpDefault$为关键词指定的缺省字符串
lpReturnString$为接受返回值指定字符的缓冲变量
nSize%指定拷贝到缓冲变量的字符个数
lpString$为新的关键词指定字符串。
上面的声明可以从VB目录上的winapi中文件win32?txt获得,可以通过剪贴板直接拷贝到VB中。
3?修改初始化文件实例
Windows软件包程序管理器(PROGRAM?EXE),初始化文件为PROGRAM.INI,缺省内容为
[Settings]
……
order=632471
……
其中,order指定程序组的排列顺序,下面的程序把Order的值改为“2341765”,并使用SHELL函数启动程序管理器。
Private Sub form_Click()
lpAppName$=″Settings″
lpKeyName%=″Order″
lpString$=″2341765″
lpFileName$=″progman.ini″
j%=WritePrivateProfileString(lpAppName$,lpKeyName$=″Order″,lpString$=″2341765″,lpFileName$)
j%=Shell(″progman.exe″,1)
End Sub
评论 {{userinfo.comments}}
{{child.content}}
{{question.question}}
提交