1. INI 파일 알아보기

INI파일 - Initialization file의 의미로 프로그램 실행을 위한 초기화 정보를 갖는 파일이다.
원도우 시스템의 초기화 정보를 저장하고 있는 INI파일로 win.ini파일이 있다.

 <INI파일 구성>

INI의 키워드 항목은 섹션(section), 키(key), 값(value)으로 구성되어 있다. 파일에 저장되는 형식은 다음과 같다.
예의 형식으로 파일에 저장하고, 섹션 이하의 항목이 계속 추가 될 수 있다.

구성 형식

예)

[Section]
Key = Value

[SERVER_INFO]
IP = 127.0.0.1
Port = 9000

2. INI파일 처리 함수 살펴보기

INI파일 처리를 위한 함수는 WIN32 API에서 제공되는 6개의 함수를 사용할 수 있다. 함수 중에서는 기본 win.ini파일만 처리할 수 있는 GetProfileString(), GetProfileInt(), WriteProfileString()함수가 있고, 개발자가 시스템 폴더(원도우즈 폴더)나 별도의 장소에 INI파일을 구성하여 처리 할 수 있는GetPrivateProfileString(), GetPrivateProfileInt(), WritePrivateProfileString()함수가 있다.

<INI파일 처리 함수 원형>

*정보 읽기
DWORD GetProfileString( LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpDefault,
                                        LPTSTR lpReturnedString, DWORD nSize )
UINT GetProfileInt( LPCTSTR lpAppName, LPCTSTR lpKeyName, INT nDefault )
DWORD GetPrivateProfileString( LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpDefault,
                                                    LPTSTR lpReturnedString, DWORD nSize, LPCTSTR lpFileName )
UINT GetPrivateProfileInt( LPCTSTR lpAppName, LPCTSTR lpKeyName, INT nDefault, LPCTSTR lpFileName )

*정보 쓰기
BOOL WritePrivateProfileString( LPCTSTR lpAppName, LPCTSTR lpKeyName, 
                                                  LPCTSTR lpString, LPCTSTR lpFileName );
BOOL WriteProfileString( LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpString );

 

3. INI파일 처리 구현하기

<Server_config.ini파일>

[SERVER_INFO]
IP = 127.0.0.1
Port = 9000

 

<구현 소스>

Server_ip = GetPrivateProfileString("SERVER_INFO", "IP", "192.168.0.1", "C:\\igame\\Server_config.ini");
Server_port = GetPrivateProfileString("SERVER_INFO", "Port", "8080", "C:\\igame\\Server_config.ini");

 WritePrivatefileString("SERVER_INFO", "IP", Server_ip, "C:\\igame\\Server_config.ini"); 

 

 

 

Posted by 혀나미
,