现在的位置: 首页 > 综合 > 正文

C++获取当前路径

2013年01月11日 ⁄ 综合 ⁄ 共 639字 ⁄ 字号 评论关闭

 

C++获取当前路径 

1

{

     CString strPath;

     GetCurrentDirectory(MAX_PATH,strPath.GetBuffer(MAX_PATH));

     strPath.ReleaseBuffer();

     return strPath;

}

 

2

 

CString CPropertyGridSampleApp::GetCurrWorkingDir()

{

  CString strPath;

  TCHAR szFull[_MAX_PATH];

  TCHAR szDrive[_MAX_DRIVE];

  TCHAR szDir[_MAX_DIR];

  ::GetModuleFileName(NULL, szFull, sizeof(szFull)/sizeof(TCHAR));

  _tsplitpath(szFull, szDrive, szDir, NULL, NULL);

  _tcscpy(szFull, szDrive);

  _tcscat(szFull, szDir);

  strPath = CString(szFull);

  return strPath;

}

 

使用第一段代码可以获得应用程序运行时所在目录。但由于在使用Microsoft Visual Studio.NET编译并运行项目时,真正的宿主是IDE,所以当前目录是项目所在目录,并不是DEBUG或者RELEASE目录,这一点需要开发人员注意。而第二段代码可以动态解决此问题。并且增加了Unicode支持(TCHAR)。

 

抱歉!评论已关闭.