作者在 2008-09-04 10:48:17 发布以下内容
//获取当前程序的完整路径,包括程序名
CString szPath;
GetModuleFileName(NULL,szPath.GetBuffer(MAX_PATH),MAX_PATH);
szPath.ReleaseBuffer();
//不包括程序名 ,可放在你的APP文件类里面
CString CXXXXXXApp::GetCurDir()
{
TCHAR sDrive[_MAX_DRIVE];
TCHAR sDir[_MAX_DIR];
TCHAR sFilename[_MAX_FNAME],Filename[_MAX_FNAME];
TCHAR sExt[_MAX_EXT];
GetModuleFileName(AfxGetInstanceHandle(), Filename, _MAX_PATH);
_tsplitpath(Filename, sDrive, sDir, sFilename, sExt);
CString homeDir(CString(sDrive) + CString(sDir));
int nLen = homeDir.GetLength();
if(homeDir.GetAt(nLen-1) != _T('\\'))
homeDir += _T('\\');
return homeDir;
}
其中:void _splitpath(
const char *path,
char *drive,
char *dir,
char *fname,
char *ext
);
void _wsplitpath(
const wchar_t *path,
wchar_t *drive,
wchar_t *dir,
wchar_t *fname,
wchar_t *ext
);
//获得程序当前的路径
char szWorkDir[256];
_getcwd( szWorkDir, 256 );
CString szPath;
GetModuleFileName(NULL,szPath.GetBuffer(MAX_PATH),MAX_PATH);
szPath.ReleaseBuffer();
//不包括程序名 ,可放在你的APP文件类里面
CString CXXXXXXApp::GetCurDir()
{
TCHAR sDrive[_MAX_DRIVE];
TCHAR sDir[_MAX_DIR];
TCHAR sFilename[_MAX_FNAME],Filename[_MAX_FNAME];
TCHAR sExt[_MAX_EXT];
GetModuleFileName(AfxGetInstanceHandle(), Filename, _MAX_PATH);
_tsplitpath(Filename, sDrive, sDir, sFilename, sExt);
CString homeDir(CString(sDrive) + CString(sDir));
int nLen = homeDir.GetLength();
if(homeDir.GetAt(nLen-1) != _T('\\'))
homeDir += _T('\\');
return homeDir;
}
其中:void _splitpath(
const char *path,
char *drive,
char *dir,
char *fname,
char *ext
);
void _wsplitpath(
const wchar_t *path,
wchar_t *drive,
wchar_t *dir,
wchar_t *fname,
wchar_t *ext
);
//获得程序当前的路径
char szWorkDir[256];
_getcwd( szWorkDir, 256 );