您当前的位置: 首页 >  phymat.nico

GetCurrentDirectory()函数误区

phymat.nico 发布时间:2013-06-28 09:07:49 ,浏览量:11

以下代码获取当前exe运行目录,在点击运行时正确,但是如果程序开机自动启动,那么获取的目录将是系统桌面文档目录;

TCHAR szBuf[MAX_PATH]={0};
 // 注意:该函数开机启动时获取目录错误
 GetCurrentDirectory(MAX_PATH, szBuf);
 CString strExcutePath(szBuf);

以下函数获取exe模块绝对路径包括文件名,可以移除文件名取路径,不会出现上述错误。

TCHAR szBuf[MAX_PATH]={0};
 // 注意:该函数开机启动时获取目录错误
  TCHAR szBuf[MAX_PATH]={0};
 // 注意:该函数开机启动时获取目录错误
 //GetCurrentDirectory(MAX_PATH, szBuf);
 GetModuleFileName(GetModuleHandle(NULL) , szBuf, MAX_PATH);
 CString strExcutePath(szBuf);
 int index = strExcutePath.ReverseFind('\\');
 m_sFilePath = strExcutePath.Left(index)+"/config.ini";

关注
打赏
查看更多评论

phymat.nico

暂无认证

  • 11浏览

    0关注

    1946博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录