37{
38 bool bRes=false;
40 char szbuff[256],szsec[256];
41 char* ppv;
42
44
45 if((pfile=fopen(szFile,"r"))==nullptr) return false;
46
47
48 memset(szsec,0,sizeof(szsec));
49 if(szSection) strncpy(szsec,szSection,sizeof(szsec)-1);
50
52
53 while(!feof(pfile)){
54 fgets(szbuff,sizeof(szbuff),pfile);
55 if(*(szbuff+strlen(szbuff)-1)=='\n') *(szbuff+strlen(szbuff)-1)=0;
56 if(strcmp(szbuff,szsec) != 0) continue;
57 else{ bRes=true; break; }
58 }
59
60 if(!bRes){
61 fclose(pfile);
62 return 0;
63 }
64
65 while(!feof(pfile)){
66 fgets(szbuff,sizeof(szbuff),pfile);
67 if(*szbuff==0 || *szbuff==' ' || *szbuff=='\n' || *szbuff==';') continue;
68 if(*szbuff=='[') break;
69 if((ppv=strchr(szbuff,'='))==nullptr) continue;
70
71 if(*(szbuff+strlen(szbuff)-1)=='\n') *(szbuff+strlen(szbuff)-1)=0;
72 *ppv=0; ppv++;
73 m_mapParams.insert(MAPSTR2STR::value_type(szbuff,ppv));
74 }
75
76 fclose(pfile);
78
80}