2010년 1월 28일 목요일

INI FILE

파일구조

[Section 1]
KeyName1=Value
KeyName2=Value

 

[Section 2]
KeyName1=Value


 

읽기

GetPrivateProfileString Function 을 이용, 모듈에 다음의 API Function 을 선언.

 

Public 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

GetPrivateProfileString은 String 타입의 값을 리턴한다

 

lpApplicationName : lpApplication Name 인수는 위의 (1)에서 설명한 ApplicationName 문자열에 해당한다.
lpKeyName : lpKeyName 인수는 위의 (1)에서 설명한 KeyName에 해당한다
lpDefault : lpDefault 인수는 문자열에 대해 유지되는 디폴트 값에 해당한다. 일반적으로 프로그램은 이 매개 변수를 사용하지 않는다.
lpReturnedString : lpReturnedString 인수는 위의 (1)에서 설명한 Value문자열에 해당한다.
nSize : nSize 인수는 lpReturnedString 인수 내의 리턴된 문자열 길이에 해당한다.             
lpFileName : lpFileName 인수는 참조중인 .ini파일의 완전히 규정된 경로와 파일 이름에 해당한다.

 

예제)
Private Sub GetINIConfig()
    Dim iniFile As String
    Dim iniValue As String
    Dim iniLen As Long
    Dim iniStr As String

   

    strFile = "app.ini"
    iniValue = String$(256, 0)

    iniLen = GetPrivateProfileString("Section 1", "KeyName1", "0", iniValue, Len(iniValue), iniFile)
    iniStr = Left$(iniValue, iniLen)
End Sub


 

쓰기

WritePrivateProfileString Function 을 이용, 모듈에 다음의 API Function 을 선언.

Public 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

lpApplicationName : lpApplication Name 인수는 위의 (1)에서 설명한 ApplicationName 문자열에 해당한다.
lpKeyName : lpKeyName 인수는 위의 (1)에서 설명한 KeyName에 해당한다
lpString : lpString 인수는 위의 (1)에서 설명한 Value 문자열에 해당한다.
lpFileName : lpFileName 인수는 참조중인 .ini파일의 완전히 규정된 경로와 파일 이름에 해당한다.

예제)
Private Sub SetINIConfig()
    Dim iniFile As String
    iniFile = "app.ini"
    WritePrivateProfileString "Section 1", "KeyName1", "TEST1234", iniFile
End Sub


 

 

 

 


 

댓글 없음:

댓글 쓰기