获取进程名,获取进程路径,获取当前进程的窗口句柄。

本文记录了在Windows系统中如何获取进程名称、路径以及通过进程ID获取窗口句柄的方法,包括使用FindWindow函数和GetCurrentProcessId结合GetProcessMainWnd函数的应用。
摘要由CSDN通过智能技术生成

则两天在做文件操作的一些帮助函数,则其中用到了获取进程的一些方法,在这里留个笔记,下次用到可以学习下。

1.获取进程的名称或者路径。

bool FileHelper::GetExeName(std::string& strExeName)
{
	strExeName.empty();
	char tmp[MAX_PATH] = {0};

	//获取当前进程的ID
	DWORD processID = ::GetCurrentProcessId();
	//通过进程ID获取到进程的句柄
	HANDLE hProcess = OpenProcess( PROCESS_QUERY_INFORMATION |
        PROCESS_VM_READ,
        FALSE, processID );
	if (NULL != hProcess )
	{
		HMODULE hMod;
		DWORD cbNeeded;
		//获取当前模块的句柄
		if ( EnumProcessModules( hProcess, &hMod, sizeof(hMod), 
			&cbNeeded) )
		{
			//获取进程的绝对路径
			GetModuleFileNameEx(hProcess, hMod, tmp, MAX_PATH);
			if(NULL == tmp || strcmp(tmp,"") == 0)
			{
				return false;
			}
		}
	}
	CloseHandle( hProcess );

	char exeName[_MAX_FNAME]={0};
	char szExe[_MAX_EXT]={0};
	_splitpath( tmp, NULL,NULL, exeName, szExe );
	if(strlen(exeName))
	{

		strExeName = exeName;
		strExeName += sz
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值