#include <Windows.h> #include <psapi.h> int main() { DWORD process_ID = 0; WCHAR process_name[MAX_PATH] = {}; HWND notepad = FindWindow(NULL, L"print.txt - Notepad"); BOOL ERR = GetWindowThreadProcessId(notepad, &process_ID); HANDLE hProcess = OpenProcess(PROCESS_QUERY_LIMITED_INFORMATION, FALSE, process_ID); GetModuleFileNameExW(hProcess, 0, process_name, MAX_PATH); return 0; }
有了HANDLE
,您可以使用GetModuleFileNameEx()
,GetProcessImageFileName()
(XP +)或QueryFullProcessImageName()
(Vista +)来获取该进程的EXE文件的完整路径和文件名:
WCHAR process_name[MAX_PATH] = {}; if (GetProcessImageFileNameW(hProcess, process_name, MAX_PATH)) { // use process_name as needed... } else { // error handling ... }
WCHAR process_name[MAX_PATH] = {}; DWORD size = MAX_PATH; if (QueryFullProcessImageNameW(hProcess, 0, process_name, &size)) { // use process_name as needed... } else { // error handling ... }
原文链接: https://www.cnblogs.com/strive-sun/p/13722915.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/404830
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!