函数GetCurrentDirectory与GetModuleFileName的区别

生动的解释:

当前工作目录——进行某项操作的目的目录,会随着OpenFileDialog、SaveFileDialog等对象所确定的目录而改变。(变化的)

当前执行文件目录——该进程从中启动的目录,即文件自身所在目录。(固定的)

形象的比喻:

工作目录与执行目录可以不同。例如一个人住在北京,但他的工作地点不一定在北京,可能在天津。

具体的用法:

	TCHAR szExe[MAX_PATH]; memset(szExe, 0, sizeof(TCHAR)*MAX_PATH);
	GetModuleFileName(NULL, szExe, MAX_PATH);
	MessageBox(NULL, szExe, TEXT("Msg"), MB_OK);
 
	TCHAR szCurrWorkPath[MAX_PATH]; memset(szCurrWorkPath, 0, sizeof(TCHAR)*MAX_PATH);
	GetCurrentDirectory(MAX_PATH, szCurrWorkPath);
	MessageBox(NULL, szCurrWorkPath, TEXT("Msg"), MB_OK);

猜你喜欢

转载自blog.csdn.net/CherishPrecious/article/details/81428464