Publié le

getprivateprofileint 예제

나는 당신이 그것을 쓴 대로 그렇게 쉽게 될 수 있으면 좋겠다! 예를 들어 “DB_SETTINGS”은 시스템::문자열!= LPCTSTR이므로 이 코드 조각은 VC++에서 작동하지 않습니다. 그것은 당신에게 하는 경우에 다음이 기적이 어떻게 생겼는지 말해 … Windows에서 프로필 API는 클래식 Windows .ini 파일에서 설정을 읽고 쓰는 데 사용되는 프로그래밍 인터페이스입니다. 예를 들어 GetPrivateProfileString 함수는 초기화 파일에서 지정된 섹션에서 문자열을 검색합니다. 예를 들어 플랫폼에 구애받지 않는 PHP는 Windows 및 Linux 시스템 모두에서 “php.ini” 구성 파일에 INI 형식을 사용합니다. [5] [6] 공백에 대한 해석은 다양합니다. 대부분의 구현에서는 속성 이름 외부의 선행 및 후행 공백을 무시합니다. 일부는 심지어 값 내에서 공백을 무시합니다(예: “호스트 이름” 및 “hostname” 등가). 일부 구현은 속성 값 주위의 선행 및 후행 공백을 무시합니다. 다른 문자는 등가 기호(공백 포함)를 따르는 모든 문자를 값의 일부로 간주합니다. 다음은 가상 프로그램에 대한 예 INI 파일입니다.

소프트웨어 소유자용과 급여 데이터베이스 연결에 대한 섹션의 두 섹션이 있습니다. 주석은 파일을 마지막으로 수정한 사용자와 DNS 이름 대신 IP 주소가 사용되는 이유를 기록합니다. 나는 두 클래스 CIniReader와 시니 라이터를 작성했습니다. 그들은 읽고 쓰는 데 사용됩니다. 이니 파일. 그들은 단지 네 가지 방법을 가지고 있으며, 매우 간단하고 유용합니다. 이 문서는 관련 소스 코드 및 파일과 함께 코드 프로젝트 오픈 라이센스(CPOL) 함수에서 라이센스가 부여되어 lpAppName에서 지정한 섹션 이름 아래의 lpKeyName 매개 변수에 지정된 이름과 일치하는 키를 검색합니다. 매개 변수. 초기화 파일의 섹션에는 다음 형식이 있어야 합니다: GetPrivateProfileString 함수의 세 번째 매개 변수는 기본 문자열이며, 이는 위의 두 함수 호출에서 각각 “127.0.0.1”과 143입니다.

이 매개 변수에 대해 제공된 인수가 NULL인 경우 기본값은 빈 문자열 “”입니다. INI 파일 형식이 잘 정의되지 않았습니다. 많은 프로그램은 위에서 설명한 기본 을 벗어난 기능을 지원합니다. 다음은 특정 프로그램에서 구현될 수도 있거나 구현되지 않을 수도 있는 몇 가지 일반적인 기능 목록입니다. 다음 샘플 C 프로그램은 위의 샘플 INI 파일에서 속성 값을 읽는 것을 보여 줍니다(구성 파일 이름을 dbsettings.ini로 하자) 이름 “INI 파일”은 일반적으로 사용되는 파일 이름 확장명에서 가져옵니다. INI는 “초기화”를 의미합니다. 다른 일반적인 초기화 파일 확장자는 . CFG, .conf,[3] 및 . TXT,[4] 특히 CONFIG.

SYS 및 `config.txt` 발생. 대부분의 경우 섹션의 속성 순서와 파일의 섹션 순서는 관련이 없지만 구현은 다를 수 있습니다. 응용 프로그램의 설정을 초기화 (INI) 파일의 코드와 분리된 상태로 유지하는 것이 유용합니다. 응용 프로그램 코드는 런타임시 이러한 설정을 읽고 해당 개체의 초기화에 사용합니다. 이 분리는 코드를 다시 컴파일할 필요없이 다른 설정으로 응용 프로그램을 시도 할 수 있음을 의미합니다. (C ++ 코드는 컴파일하는 데 시간이 걸립니다!) 그리고 INI 파일은 사람이 읽을 수 있고 모든 텍스트 편집기에서 쉽게 쓰기 가용입니다. 정수 또는 문자열 값을 읽으려면 GetPrivateProfileInt() 또는 GetPrivateProfileString()를 사용합니다. 문자열 값을 키에 다시 쓰려면 WritePrivateProfileString()을 사용합니다. 정수를 다시 쓰고 문자열로 변환하는 함수는 없습니다. 이름이 같은 여러 섹션 선언의 해석도 다릅니다. 일부 구현에서 중복 섹션은 속성을 연속적으로 발생한 것처럼 병합하기만 하면 됩니다.

다른 항목은 INI 파일의 일부 측면을 중단하거나 무시할 수 있습니다. 리눅스와 유닉스 시스템은 또한 시스템 구성에 유사한 파일 형식을 사용합니다. 또한 플랫폼에 구애받지 않는 소프트웨어는 이 파일 형식을 구성에 사용할 수 있습니다. 사람이 읽을 수 있고 구문 분석이 간단하므로 훨씬 더 복잡하지 않은 구성 파일에 사용할 수 있는 형식입니다.