您的位置:首页 > 其它

GetModuleFileName 函数的用法

2017-03-03 13:31 447 查看
DWORD WINAPI GetModuleFileName(

_In_opt_ HMODULE hModule, //一个模块的句柄。可以是DLL模块,或应用程序的实例句柄。如果该参数为NULL.该函数返回该应用程序的全路径

_Out_ LPTSTR lpFilename,//指定一个字符缓冲区,要在其中容纳文件的用NULL字符种植的路径名,

_In_ DWORD nSize//缓冲区lpFileName的最大字符数量

);

返回值: LONG 如执行成功,返回复制到lpFileName的实际字符数量,0表示失败。

使用GetLastError可以打印错误

示例

#include <windows.h>

#include <stdio.h>

BOOL CreateSampleService()

{

TCHAR szPath[MAX_PATH];

if( !GetModuleFileName( NULL, szPath, MAX_PATH ) )

{

printf("GetModuleFileName failed (%d)\n", GetLastError());

return FALSE;

}

return TRUE;

}

/*

如果想获得某个正在运行的EXE或者DLL的全路径可以这样写代码

GetModuleFileNameEx(hProcess,hInst,lpFile,MAX_PATH);//注意下缓冲区就行了。

*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: