MFC-通过HWND获取HANDLE

Posted 天子骄龙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC-通过HWND获取HANDLE相关的知识,希望对你有一定的参考价值。

    HWND hWnd = ::FindWindow(_T("Windows.UI.Core.CoreWindow"), NULL);//获取与指定窗口类名和窗口名的最顶层窗口的窗口句柄
    //寻找系统计算器句柄(win10)
    if (!hWnd) 
        AfxMessageBox(_T("系统计算器句柄没找到"));
    
    
    DWORD pid = NULL;
    ::GetWindowThreadProcessId(hWnd, &pid);//获取指定窗口进程ID
    HANDLE process = OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_READ | PROCESS_VM_WRITE | PROCESS_QUERY_INFORMATION, FALSE, pid);

 

 

 

 

C# 通过pid获取hwnd / 通过pid查找hwnd

hwnd = Process.GetProcessById(99999).MainWindowHandle;

以上是关于MFC-通过HWND获取HANDLE的主要内容,如果未能解决你的问题,请参考以下文章

如何取得桌面窗口矩形大小?mfc

MFC 中MessageBox 显示在所有窗口的最上面

CWnd与HWND,GetSafeHwnd()与m_hWnd

mfc中CClientDC(this)的this怎么获得?

mfc怎么设置dialog大小

C++中如何获取当前窗口句柄?