嗯,标题说哪个是我的问题
我的.cpp代码是:
GetPrivateProfileString("Server","MainDns","ServerDns",
g_DataBaseDns,sizeof(g_DataBaseDns),".\\Server.ini");
当我使用时:
GetPrivateProfileString("Server","MainDns","ServerDns",
g_DataBaseDns,sizeof(g_DataBaseDns),"..\\Server.ini");
并将ini文件放在后面的文件夹中:正常工作!
我做错了什么?
答案 0 :(得分:0)
您需要先调用GetFullPathName()
以获取绝对路径,根据GetPrivateProfileString()
的文档需要该路径:
初始化文件的名称。 如果此参数不包含文件的完整路径,系统将在Windows目录中搜索该文件。
例如:
TCHAR sAbsolutePathBuffer[2048] = _T("");
if (GetFullPathName(TEXT("Server.ini"), sizeof(sAbsolutePathBuffer)/sizeof(TCHAR), sAbsolutePathBuffer, NULL))
{
GetPrivateProfileString(TEXT("Server"), TEXT("MainDns"), TEXT("ServerDns"),
g_DataBaseDns, sizeof(g_DataBaseDns), sAbsolutePathBuffer);
}