c++ 遍历ini
inline void CDLG_SET1::EnumIniFile(LPCTSTR pFilePath, CString strKey) { TCHAR strAppNameTemp[1024];//所有AppName的返回值 TCHAR strKeyNameTemp[1024];//对应每个AppName的所有KeyName的返回值 TCHAR strReturnTemp[1024];//返回值 DWORD dwKeyNameSize;//对应每个AppName的所有KeyName的总长度 //所有AppName的总长度 DWORD dwAppNameSize = GetPrivateProfileString(strKey,NULL,NULL,strAppNameTemp,1024,pFilePath); if(dwAppNameSize>0) { TCHAR *pAppName = new TCHAR[dwAppNameSize]; int nAppNameLen=0; //每个AppName的长度 for(int i = 0;i<dwAppNameSize;i++) { pAppName[nAppNameLen++]=strAppNameTemp[i]; if(strAppNameTemp[i]=='\0') { OutputDebugString(pAppName); //获取关键字 OutputDebugString(_T("/r/n")); dwKeyNameSize = GetPrivateProfileString(pAppName,NULL,NULL,strKeyNameTemp,1024,_T("test.INI")); memset(pAppName,0,dwAppNameSize); nAppNameLen=0; } } delete[]pAppName; } }