比如程序的路径是在c:\test\test.exe
c:\test\config.ini当我在c:\test\目录下执行test.exe时,可以找到目录里的config.ini
但是如果我创建test.exe的快捷方式到桌面.
然后双击这个快捷方式执行就无法找到config.ini了
请问这种情况怎么办?
c:\test\config.ini当我在c:\test\目录下执行test.exe时,可以找到目录里的config.ini
但是如果我创建test.exe的快捷方式到桌面.
然后双击这个快捷方式执行就无法找到config.ini了
请问这种情况怎么办?
memset(tpath,0,sizeof(tPath)*sizeof(TCHAR));
::GetModuleFileName(NULL,tPath,MAX_PATH);CString str=tPath;int i=str.ReverseFind("\\");
if (i!=-1)
{
str=str.Mid(0,i);
}
str="File Name=" + str + "\\db.udl";
在桌面上,默认工作路径是桌面,必然无法得到config.ini文件了。GETCURRENTPATH得到的可能是工作目录而不是当前模块(dll或exe)所在的目录。
GetModuleFileName()得到当前模块的全部路径(例如:c:\mydoc\prog.exe ),可以得到模块的路径