您的位置:首页 > 其它

获取进程所在的exe路径

2008-11-20 22:47 302 查看
/**********************************************************
函数名:GetProcessPath
功  能: 根据进程PID得到程序所在路径
参  数: 进程PID
返回值: 返回一个路径
**********************************************************/
char *GetProcessPath( DWORD idProcess )
{
    // 获取进程路径
    char sPath[FILENAME_MAX] = {0};
    // 打开进程句柄
    HANDLE hProcess = OpenProcess(  PROCESS_QUERY_INFORMATION | PROCESS_VM_READ,
        false, 
        idProcess );
    if( NULL != hProcess )
    {
        HMODULE hMod;
        DWORD cbNeeded;
        // 获取路径
        if( EnumProcessModules( hProcess, &hMod, sizeof( hMod ), &cbNeeded ) )
        {
            DWORD dw = GetModuleFileNameEx( hProcess, hMod, sPath, MAX_PATH );
            
        }
        CloseHandle( hProcess );
    }
    return sPath ;
}
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: