最近又遇到 GetPrivateProfileString获取INI文件无法取得值得 的问题。郁闷死了 最终还是解决了。
在这里总结一下
一、检查路径是否是绝对路径?
如果是Dll内部读取最好使用\\
二、检查ini文件的编码 与 项目编码一致
三、检查参数的类型[今天遇到的问题就是这个]
for (int n=0; n<sizeof(Keys)/sizeof(CString); n++)
{ //读取配置
TCHAR KeyVal[256]={0},szNode[64]={0};
strcpy(szNode,CmdLine.GetBuffer(0) );
CmdLine.ReleaseBuffer();
//NMB 逼我啊 这TMD 就是有问题
//::GetPrivateProfileString( CmdLine, Keys[n].GetBuffer(0), "", KeyVal, 256, AsdLoad_ini);
::GetPrivateProfileString( (LPCSTR) szNode, Keys[n].GetBuffer(0), "", KeyVal, 256, AsdLoad_ini);
CString strTemp(KeyVal);
Keys[n].ReleaseBuffer();
}
暂时就这3种情况了...