精华内容
下载资源
问答
  • c#查找窗口是否存在

    千次阅读 2017-10-07 18:18:44
    使用spy++查看窗口句柄: ... ...在“窗口搜索”对话框中,鼠标左键在 查找程序工具 后面的 图标 处按下不放,将此图标拖移到我们想要知道信息的窗口内,再松开鼠标。...查找窗口是否存在: [DllImport("user

    使用spy++查看窗口句柄:

    (1) 点击 VS 菜单“工具” - “spy++”,启动 spy++。
    (2) 点击 spy++ 工具栏中的 望远镜 图标,弹出一个“窗口搜索”的对话框。在“窗口搜索”对话框中,鼠标左键在 查找程序工具 后面的 图标 处按下不放,将此图标拖移到我们想要知道信息的窗口内,再松开鼠标。



    查找窗口是否存在:

    [DllImport("user32.dll")]
    static extern IntPtr FindWindow(string strClass, string strWindow);


    IntPtr ptrTaskbar = FindWindow(null, "平安证券消息中心");
     if (ptrTaskbar != IntPtr.Zero)
     {
            LoginCs = LoginFlag.E_CloseNote;
            PublicValue.Count = 3;
      }

    展开全文
  • 查找窗口句柄

    千次阅读 2016-11-30 12:31:00
    HWND SearchWindow(CString ...//获得桌面窗口 CWnd* pDesktopWnd = CWnd::GetDesktopWindow(); //获得第一个子窗口 CWnd* pWnd = pDesktopWnd->GetWindow(GW_CHILD); CString strClassName = _T(""); CString
    HWND SearchWindow(CString strWinName)
    {
    //获得桌面窗口
    CWnd* pDesktopWnd = CWnd::GetDesktopWindow();

    //获得第一个子窗口
    CWnd* pWnd = pDesktopWnd->GetWindow(GW_CHILD);
    CString strClassName = _T("");
    CString strWindowText= _T("");
    strWinName.MakeUpper();
    while (pWnd != NULL) 
    {
    //获得窗口标题
    ::GetWindowText(pWnd->GetSafeHwnd(), strWindowText.GetBuffer(256), 256);
    strWindowText.ReleaseBuffer();
    strWindowText.MakeUpper();
    if (strWindowText.Find(strWinName) != -1)
    {
    //获得窗口类名
    ::GetClassName(pWnd->GetSafeHwnd(), strClassName.GetBuffer(256), 256);
    strClassName.ReleaseBuffer();
    return pWnd->GetSafeHwnd();
    }
    //继续下一个子窗口 
    pWnd = pWnd->GetWindow(GW_HWNDNEXT);
    }
    return 0;
    }
    展开全文
  • 用OD手动查找窗口过程函数(classProc)

    千次阅读 2015-03-01 12:57:19
    有时候我们用OD查找窗口的classProc地址是不正确的,这时候可以用如下方法手动查找 1. 用OD打开被调试程序  打开 插件->API断点设置工具->常用断点设置,把CreateWindow的三个函数勾上,确定   2. 按F9让...

    有时候我们用OD查找窗口的classProc地址是不正确的,这时候可以用如下方法手动查找


    1. 用OD打开被调试程序

        打开 插件->API断点设置工具->常用断点设置,把CreateWindow的三个函数勾上,确定

       

    2. 按F9让程序运行并在断点停下,直到在堆栈窗口观察到你要的窗口名字(本文以“计算器”为例)



    3. 一路F8执行直到回到调用CreateWindowExW的代码段,并在附近找到pWndClassEx,可发现pWndClassEx的值存放在eax中,下面的RegisterClassExW就是利 用pWndClassEx把窗口过程函数和窗口绑定起来的


    4. 我们把断点设置在push eax这行并清空其他断点,重新运行程序到断点处,在命令行键入db eax可以查找到pWndClassEx的数据,我们用MSDN查找

    pWndClassEx的数据结构如下图,可以发现窗口过程函数保存在lpfnWndProc变量中,即第三个DWORD数据

    从数据窗口可以看到pWndClassEx的数据,以我查到的结果为例,窗口过程函数的地址应为0x00731EDE(这里要注意,低字节在右边)



    5. Ctrl+G 键入0x00731EDE我们就可以跳转到窗口过程函数的代码啦~

    展开全文
  • 使用Python时,有时也会要操作到系统窗口的一些东西,下面就介绍win32gui.Findwindow(param1,param2)方法查找窗口句柄参数及对应参数值如何获取 win32gui.Findwindow(param1,param2):param1需要传入窗口的类名,...

    介绍之前先让大家了解一下win32gui的模块用法 和 获取窗口类名工具

     

    使用Python时,有时也会要操作到系统窗口的一些东西,下面就介绍win32gui.Findwindow(param1,param2)方法查找窗口句柄参数及对应参数值如何获取

    win32gui.Findwindow(param1,param2):param1需要传入窗口的类名,param2需要传入窗口的标题

    下面以窗口查找工具:WinSpy

    1、打开WinSpy工具,显示如下(注意这个圈圈按钮可以拖动到目标窗口,然后释放)

    2、比如我要查找一个 打开/另存为 的窗口,先将winspy++拖到 打开/另存为 的窗口上,拖到目标窗口上后,窗口周围显示出黑色框框,如下面红色箭头所指

     

     3、拖到目标窗口后,然后释放,在winspy++上就会显示该窗口的信息(主要只使用里面的标题及类名)

    所以上面的方法中填的值就为这样:win32gui.FindWindow('#32770', u'打开')

     

    4、额外讲一个使用winspy++所查找的窗口是否为我们需要的窗口,可以让所查找的窗口进行闪动,更直观的进行确认

    4.1、点击winspy++窗口右下脚中的 More 按钮,如上图中箭头所指

    4.2、然后点击Locate定位到窗口,再次点击 Flash,所查找的窗口会一闪一闪的

     

    转载于:https://www.cnblogs.com/aziji/p/10483242.html

    展开全文
  • WinAPI: FindWindow、FindWindowEx - 查找窗口FindWindow( lpClassName, {窗口的类名} lpWindowName: PChar {窗口的标题}): HWND; {返回窗口的句柄; 失
  • //窗口置顶 1 CWnd *wnd = CWnd::FindWindow(NULL, _T("test.txt - 记事本"));//通过窗口名 2 3 if (wnd) 4 5 { 6 7 wnd->ShowWindow(SW_NORMAL);//显示窗口 8 9 wnd->SetForegroundWindow...
  • 但是这个函数不能查找窗口,也不区分大小写。 如果要从一个窗口的子窗口查找需要使用FindWindowEX。   函数功能:该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找...
  • VC中查找窗口并向其发送消息

    千次阅读 2011-06-17 10:37:00
    1、查找窗口句柄的方法:方法1:FindWindow方法,如下://先找到窗口//假设要找窗口的名字为TEST//根据窗口名来查找CWnd *pWnd = CWnd::FindWindow(NULL,L"TEST");if (!pWnd){ MessageBox(L"无效窗口")}/***********...
  • vs2008打开查找窗口很卡的问题

    千次阅读 2011-10-01 09:57:14
    1.突然感觉vs2008打开查找窗口的时候很卡,很花了点时间解决这个问题。是中间文件导致的。删除解决方案的ncb文件和suo中间文件就好了。太好了。快多了
  • 根据进程查找窗口

    千次阅读 2015-05-10 10:30:39
    #include //根据进程名获取进程ID ...BOOL GetPidByProcessName(TCHAR *... //返回z序中的前一个或后一个窗口的句柄  hWnd = ::GetNextWindow(hWnd , GW_HWNDNEXT);  }  return hWnd; }
  • 1、下面的代码可以通过窗口的名字找到置顶的窗口对象 CWnd*m_TestWnd = FindWindow(NULL,_T("Hello,Test window")); if (NULL !=m_TestWnd) { m_TestWnd->ShowWindow(SW_HIDE); } 上述代码可以将窗口隐藏,...
  • Function Long FindWindowA(uLong lpClassName,ref string lpWindowName) Library "user32"************************************************************************************功能:根据窗口标题查找窗口示例...
  • 1、下面的代码可以通过窗口的名字找到置顶的窗口对象 CWnd*m_TestWnd = FindWindow(NULL,_T("Hello,Test window")); if (NULL !=m_TestWnd) { m_TestWnd->ShowWindow(SW_HIDE); } 上述代码可以将窗口隐藏,...
  • vs2010 查找窗口不见了

    千次阅读 2015-01-16 11:31:51
    问题现场:按ctrl+F的时候老是出现右上角的查找框,那个框子很多bug......明明光标停上在面了,...解决方案:这应该是VS2010的一个BUG只能重置环境:点 里面有个重置窗口布局>,再ctrl+F/ ctrl+shift+F.把它停靠在...
  • 查找窗口的几种方法

    千次阅读 2013-08-02 15:20:37
    1.根据窗进程的ID来查找 //枚举窗口 BOOL CALLBACK EnumWindowsProc(HWND hWnd,LPARAM lParam) {  LPWNDINFO pInfo = (LPWNDINFO)lParam;  DWORD dwProcessId = 0;  GetWindowThreadProcessId(hWnd, &...
  • 原文地址: ...   FindWindow(  lpClassName, {窗口的类名}  lpWindowName: PChar {窗口的标题} ): HWND; {返回窗口的句柄; 失败返回 0} //FindWindowEx 比
  • 我们知道通过窗口句柄来查找创建这个窗口进程ID可以通过调用微软提供的API函数:DWORD GetWindowThreadProcessId( HWND hWnd, // Handle to the window. LPDWORD lpdwProcessId // Pointer to a 32-bit value that...
  • FindWindow( lpClassName, {窗口的类名} lpWindowName: PChar {窗口的标题}): HWND; {返回窗口的句柄; 失败返回 0}//FindWindowEx 比 FindWindow 多出两个句柄参数:FindWindowEx( Parent: HWND; {要查找窗口
  • FindWindow( lpClassName, {窗口的类名} lpWindowName: PChar {窗口的标题}): HWND; {返回窗口的句柄; 失败返回 0}//FindWindowEx 比 FindWindow 多出两个句柄参数:... {要查找窗口的父窗口句柄} Child:
  • 程序运行截图如下:此处分2种情况,1.句柄处于最小化,2.句柄处于非最小化。代码如下:#include <windows.h> #include <iostream> using namespace std;... cout...
  • c# 查找其他窗口得方法

    千次阅读 2019-03-26 15:27:46
    查找窗口 [DllImport(“User32.dll”, EntryPoint = “FindWindow”)] public extern static IntPtr FindWindow( string lpClassName,string lpWindowName); IntPtr maindHwnd = FindWindow(“WindowsForms10.Window...
  • 查找特定窗口的句柄

    2007-03-24 11:16:00
    BOOL CFormTextDlg::_FindWindows(CString wName){ //查找窗口 CWnd *hw; int i=0; hw = FindWindowEx(NULL,NULL,_T("#32770"),NULL); //查找C++窗口 CString str=_T(""),restr=_T(""); while(hw->...
  • Pywin32是一个Python库,...1.通过类名和标题查找窗口句柄,并获得窗口位置和大小import win32gui import win32api classname = "MozillaWindowClass" titlename = "百度一下,你就知道 - Mozilla F...
  • Qt查找窗口

    千次阅读 2016-02-25 23:42:13
    通过能ID获取子窗口; 每个资源都有一个nID作为唯一标识; 在Qt中可以通过 QObject::findChild(const QString & name = QString(), Qt::FindChildOptions options = Qt::FindChildren

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 350,768
精华内容 140,307
关键字:

查找窗口