환경 설정 파일(ini)의 특정 값을 읽는 GetPrivateProfileString 사용 샘플입니다.

MFC 함수로 만들어서 사용한 예입니다.

 

BOOL CUtility::ReadOptionString(CString section, CString key, CString& value)         
                                                                                                            
     // 환경설정 파일이 ini .포멧 파일 형태                                                         
     CString strPath = GetAppDataPath() + L"\\option.dat";                                 
     WCHAR optValue[MAX_NAME] = {0};                                                          
     BOOL bSuccess = GetPrivateProfileString(section, key, NULL, optValue,  MAX_NAME, strPath);
     value = optValue;       
     return bSuccess; 
}

 

 

환경설정의 특정 섹션에 키와 값을 저장하는 샘플입니다.

 

BOOL CUtility::WriteOptionString(CString section, CString key, CString value)
{
 CString strPath = GetAppDataPath() + L"\\option.dat";
 BOOL bSuccess = WritePrivateProfileString(section, key, value, strPath);
 return bSuccess;
}

 


자바스크립트의 Split 함수와 동일한 역할을 하는 MFC의 CString을 CStringArray을 변환하는 팁입니다.

 

 

CString str = L"AAA*??*BBB*??*CCCC";

CStringArray itemInfors;
 m_Utility.SpliteArray(str,  L"*??*", itemInfors);

 

void CUtility::SpliteArray(CString strData, CString Seperator, CStringArray& arr)

{

           CStringArray datas;

           CString Sep = Seperator;

           CString data = strData;

           int Position = 0;

           CString Token;

                    

           Token = data.Tokenize(Seperator, Position);

           if( Token != L"") arr.Add(Token);

 

           while(!Token.IsEmpty())

           {

                     // Get next token.

                     Token = data.Tokenize(Seperator, Position);

                     if(Token != L"")

                     {

                                arr.Add(Token);

                     }                                         

           }

}

 

MFC 정적 DLL 만들기

[Native] C/C++/ATL/[MFC] Dev Tips 2014.12.30 17:54 Posted by Sudean(수딘)

MFC용 정정 DLL 만드는 방법입니다.

표준 DLL 보다 헐씬 간단하고 개발도 쉽죠. 단, MFC 에만 가능하다는 것....

 

VS 2010 에서 

  1) Add - New Project 선택합니다.  

 

2) 해당 프로젝트에 클래스를 추가하고 헤더파일에 CObject를 상속받고 클래스 AFX_EXT_CLASS 키워드를 추가합니다.

 

 

3) 생성된 DLL 및 LIB 파일과 클래스 파일을 빌드 후에  dll을 참조할 프로그램에서 사용할 수 있도록 자동 복사하도록 합니다.

 

 

 4) 메인 프로그램에 사용할 수 있도록 설정합니다.

    

    Linker - Input 의 Additional Dependencies에 lib 명 추가

   

 

    Linker - General - Additional  Library Directories 에 해당 dll과 lib 경로 설정

 

메인 프로그램에서 헤더 파일을  추가하고 사용하면 됩니다.

 

간단하죠~~