GetCurrentDirectory 和GetModuleFileNamed的区别
2017-05-15 18:13
549 查看
转载自:http://blog.csdn.net/buaalei/article/details/5211422
一
DWORD GetCurrentDirectory(
DWORD nBufferLength,
LPTSTR lpBuffer
);
The GetCurrentDirectory function retrieves the current directory for the current process.
GetCurrentDirectory返回当前进程的当前目录,并不一定返回你的应用程序的目录。如果你在应用程序中调用了打开文件对话框,你选择了一个文件,那么,这个文件所在的目录就成了当前进程的当前目录了。
二
DWORD GetModuleFileName(
HMODULE hModule,
LPTSTR lpFilename,
DWORD nSize
);
GetModuleFileName 函数指定当前进程模块的路径.它仅仅操作当前进程下的模块.如果想获取其他进程下的模块信息, 则需使用 GetModuleFileNameEx 函数.
三 例子
例子:
TCHAR strExePath[_MAX_PATH];
GetModuleFileName(NULL,strExePath,_MAX_PATH);
PathRemoveFileSpec(strExePath);
如果当前执行程序的位置为c:/test.exe,GetModuleFileName获取的strExePath即为c:/test.exe,通过去掉名称函数最终获得的strExePath为c:。(注意PathRemoveFileSpec 系统API函数调用时必须包含#include "Shlwapi.h"作为头文件)
TCHAR strExePath[_MAX_PATH];
GetCurrentDirectory(_MAX_PATH, strExePath);
获取当前的系统目录,可能是c:也可能是其他值。
一
DWORD GetCurrentDirectory(
DWORD nBufferLength,
LPTSTR lpBuffer
);
The GetCurrentDirectory function retrieves the current directory for the current process.
GetCurrentDirectory返回当前进程的当前目录,并不一定返回你的应用程序的目录。如果你在应用程序中调用了打开文件对话框,你选择了一个文件,那么,这个文件所在的目录就成了当前进程的当前目录了。
Parameters
nBufferLength: 接收保存路径的字符串缓存长度, 缓存必须有一个保存结束的空字符的位置.
lpBuffer:指向接收字符串的缓存,收到的非空字符串指定了当前目录的绝对路径.
二DWORD GetModuleFileName(
HMODULE hModule,
LPTSTR lpFilename,
DWORD nSize
);
GetModuleFileName 函数指定当前进程模块的路径.它仅仅操作当前进程下的模块.如果想获取其他进程下的模块信息, 则需使用 GetModuleFileNameEx 函数.
Parameters
hModule:模块的句柄,或者设置为NULL表示当前模块。
lpFilename:保存路径的缓冲区。
nSize:缓冲区的大小。
三 例子例子:
TCHAR strExePath[_MAX_PATH];
GetModuleFileName(NULL,strExePath,_MAX_PATH);
PathRemoveFileSpec(strExePath);
如果当前执行程序的位置为c:/test.exe,GetModuleFileName获取的strExePath即为c:/test.exe,通过去掉名称函数最终获得的strExePath为c:。(注意PathRemoveFileSpec 系统API函数调用时必须包含#include "Shlwapi.h"作为头文件)
TCHAR strExePath[_MAX_PATH];
GetCurrentDirectory(_MAX_PATH, strExePath);
获取当前的系统目录,可能是c:也可能是其他值。
相关文章推荐
- GetCurrentDirectory()和GetModuleFileName()函数的区别
- 获取文件的绝对路径, GetCurrentDirectory()和GetModuleFileName()函数的区别
- GetCurrentDirectory()和GetModuleFileName()函数的区别
- GetModuleFileName与GetCurrentDirectory的区别
- SetCurrentDirectory(),GetCurrentDirectory(),GetModuleFileName(),以及getcwd()的区别
- GetCurrentDirectory 和 GetModuleFileName 区别
- 也谈GetCurrentDirectory 和 GetModuleFileName的 区别(在Command窗口下运行.exe程序)
- GetCurrentDirectory()和GetModuleFileName()函数的区别
- GetCurrentDirectory()和GetModuleFileName()函数的区别
- 获取程序路径的方法.\\,GetCurrentDirectory与GetModuleFileName的区别
- 获取文件的绝对路径, GetCurrentDirectory()和GetModuleFileName()函数的区别
- GetModuleFileName 与 GetCurrentDirectory 的重大区别
- SetCurrentDirectory(),GetCurrentDirectory(),GetModuleFileName()的区别
- 获取路径API:GetCurrentDirectory、GetModuleFileName
- GetCurrentDirectory、SetCurrentDirectory和GetModuleFileName
- 获得当前应用程序目录的GetCurrentDirectory()和GetModuleFileName()函数 .
- 获取路径API:GetCurrentDirectory、GetModuleFileName
- MFC获取路径的两个函数GetCurrentDirectory()和GetModuleFileName()
- MFC获得当前应用程序目录GetCurrentDirectory()和GetModuleFileName()函数
- MFC获得当前应用程序目录的GetCurrentDirectory()和GetModuleFileName()函数