void EnumIniFile(LPCTSTR pFilePath) { // TODO: Add your control notification handler code here TCHAR strAppNameTemp[1024];//所有AppName的返回值 TCHAR strKeyNameTemp[1024];//对应每个AppName的所有KeyName的返回值 TCHAR strReturnTemp[1024];//返回值 DWORD dwKeyNameSize;//对应每个AppName的所有KeyName的总长度 //所有AppName的总长度 DWORD dwAppNameSize = GetPrivateProfileString(NULL,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")); if(dwAppNameSize>0) { TCHAR *pKeyName = new TCHAR[dwKeyNameSize]; int nKeyNameLen=0; //每个KeyName的长度 for(int j = 0;j<dwKeyNameSize;j++) { pKeyName[nKeyNameLen++]=strKeyNameTemp[j]; if(strKeyNameTemp[j]=='/0') { OutputDebugString(pKeyName); OutputDebugString(_T("=")); if(GetPrivateProfileString(pAppName,pKeyName,NULL,strReturnTemp,1024,pFilePath)) OutputDebugString(strReturnTemp); memset(pKeyName,0,dwKeyNameSize); nKeyNameLen=0; OutputDebugString(_T("/r/n")); } } delete[]pKeyName; } memset(pAppName,0,dwAppNameSize); nAppNameLen=0; } } delete[]pAppName; } }