您的位置:首页 > 其它

vc获取程序的工作路径的方法

2014-08-22 08:37 246 查看
1.方法1

   char pBuf[MAX_PATH];                                               //存放路径的变量

   GetCurrentDirectory(MAX_PATH,pBuf);                   //获取程序的当前目录

   strcat(pBuf,"\\");

   strcat(pBuf,AfxGetApp()->m_pszExeName);   

   strcat(pBuf,".exe");                                                       //获取程序的全文件名

2.方法2

   //函数返回应用程序所在的路径  

   CString    CClientApp::ReturnPath()  

   {   

   CString    sPath;   

   GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH);   

   sPath.ReleaseBuffer    ();   

   int    nPos;   

   nPos=sPath.ReverseFind('\\');   

   sPath=sPath.Left(nPos);   

   return    sPath;   

   }

方法3

CFileDialog dlg(TRUE) 

CFileDialog dlg(TRUE);     // TRUE是“打开”对话框      // FALSE是“另存为”对话框

int ret=dlg.DoModal(); 

if(ret==IDOK) 



CString pathname=dlg.GetPathName();  //得到文件所在路径+文件名

CString filename=dlg.GetFileName(); //得到文件名

char tbuf[120]; 

sprintf(tbuf,"The %s file in %s is saved!",filename,pathname); 

AfxMessageBox(tbuf);

}

特别注意::以上3种方法获取的路径是当前的工作路径,如果是A程序中打开了B程序,B程序中使用了上述方法或者".\\"的缺省路径的话得到的都是A的工作路径下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: