应用microsoft spy 专用工具能够查验操作系统中全部市场的层级关联,查询其特性解析xml对话框,捕获并查询特殊对话框的消息。查询随意windows页面的handle,caption,class信息内容.此外DELPHI和BCB里有一个WINSIGHT仿佛和SPY 类似。
开启microsoft spy ,在菜单栏挑选Find专用工具,在弹出来的window Search对话框中拖拽Finder tool的标志至总体目标对话框就可以.
Windows程序流程全是根据消息体制的,每一个程序流程上都会出现各式各样的消息,假如想根据消息来管理程序的运作,大家仅用关注程序流程中的指令消息(WM_COMMAND)就可以了,别的有关软件界面这些的消息,能够无论。要查询程序运作的消息,应用Visual Studio中内置的专用工具spy++。
打开spy++,挑选 spy|Windows,随后便会展现出当今的全部对话框,一些主对话框中的字对话框也会展示出去,例如菜单栏对话框,编写对话框这些。在在其中寻找总体目标对话框。
下列就是我运作spy++时表明的一部分spy++对话框,在其中有FineReader对话框001702A6 - tooltips_class32000C01FE - M MSCTFIME Ul001C02A0 - Default IME IME002401DO - tooltips_class32003B009A - MicrosoftSpy - [Windows 2] Afx:100000:0:10011:0:260051500300244 - M MSCTFIME Ul002E032E - FineReaderTipWindowClass004F02B4 - tooltips_class3200410254 - Untitled batch - ABBYY FineReader 7.0 Professional EditionFineReader7MainWindowClass003E0370 - DDE Server Window OleDdeWndClass005002DC - ComboLBox000D02B6 - ComboLBox00270320 - ComboLBox00AB0366 - ComboLBox00A000A4 - tooltips_class32(注:之上是应用print screen抓屏,随后应用FineReader鉴别的結果)
挑选FineReader对话框,点一下鼠标右键,弹出来菜单中选择“Messages”,就可以逐渐监听该对话框的消息。你如果操作过程一下便会发觉,消息十分多,没办法从这当中寻找自身了解的消息。为了更好地挑选出大家自身的消息,大家必须对消息开展过虑。挑选Messages|Options,弹出来菜单中选择Messages Tab页,能够看到许多消息过虑选择项。我觉得监听WM_COMMAND消息,所以我Clear All以后,只挑选General消息。
之上安装好以后,逐渐监听消息,随后到FineReader对话框中点一下Read便捷按键(安该按键以后,FineReader逐渐鉴别当今选择的图片),随后返回spy++,监听到的消息依然许多,可是还可以寻找我们要查询的消息。假如你只按了一个按键或是一个菜单栏,在监听到的消息正中间,你应该能够寻找2个WM_COMMAND消息,一个发送出来的消息,一个回到的消息,坚信信息内容见下文。
下列是我还在spy++中监听到的消息,在其中有一个WM_COMMAND消息00039 00410254 R...................WM_NOTIFY00040 00410254 S...................WM_COMMAND v/NotifyCode:0 (sent from amenu] wlD:4o2o300041 00410254 S...................WM_GETTEXT cchTextMax:512lpszText:0012E20000042 00410254 R...................WM_GETTEXT cchCopied:72lpszText:0012E200 fUl(注:之上是应用print screen抓屏,随后应用FineReader鉴别的結果)
双击鼠标这一WM_COMMAND消息,能够看到有关这一消息的详细资料,如下所示Window Handle 001F00AA //FineReader窗口句柄Nesting Level 2Message 0111 (Sent) //WM_COMMAND消息ID,这一消息是发送出的消息WM_COMMANDwParam 00009D0B //WM_COMMAND消息的2个主要参数lParam 00000000
在spy++中监听到的此外一个WM_COMMAND消息00089 00410254 S...................WM_GETTEXT cchTextMax:512lpszText:0012E1E000090 00410254 R...................WM_GETTEXT cchCopied:71lpszText:0012E1E0 (V)00092 00410254 S...................WM_NOTIFY idCtrl:177 pnmh:0012F988(注:之上是应用print screen抓屏,随后应用FineReader鉴别的結果)
双击鼠标这一WM_COMMAND消息,能够看到有关这一消息的详细资料,如下所示Window Handle 001F00AA //FineReader窗口句柄Nesting Level 2Message 0111 (Return) //WM_COMMAND消息ID,这一消息是的消息WM_COMMANDwParam 00009D0B //WM_COMMAND消息的2个主要参数lParam 00000000
即然能够查询到程序流程中消息的ID及消息的主要参数,那麼我们可以自身撰写程序流程,向被控制的程序流程发送相匹配的消息,进而管理程序的运作。
第一步,在自身的程序流程中开启可执行程序,应用一下API,实际请查询MSDN。HINSTANCE ShellExecute(HWND hwnd,LPCTSTR lpOperation,LPCTSTR lpFile,LPCTSTR lpParameters,LPCTSTR lpDirectory,INT nShowCmd);
在我的程序流程中,可执行程序为FineReader,开启系统的编码如下所示:HINSTANCE hRet = 0;hRet = ShellExecute(m_hWnd,NULL,D:\\Program Files\\ABBYY FineReader 7.0 ProfessionalEdition\\FineReader.exe,NULL,NULL,SW_HIDE);if( (int)hRet = 32 ){MessageBox(开启FineReader不成功!);}
第二步,寻找总体目标对话框,得到总体目标对话框的返回值CWnd* pWnd = NULL;
//很有可能程序流程运行比较慢,必须试着数次才能够寻找总体目标对话框while(pWnd == NULL){Sleep(1000);pWnd = FindWindow(NULL, Batch - ABBYY FineReader 7.0 ProfessionalEdition);}
第三步,向总体目标对话框发送消息。能够使FineReader运行时,全自动开启最后一次运作的一个Batch,因此大家仅用发送消息,让FineReader逐渐鉴别就可以了。根据spy++能够查询到FineReader鉴别的WM_COMMAND信息内容如下所示Message 0111 (Sent)WM_COMMANDwParam 00009D0BlParam 00000000按下列方法向FineReader发送这一消息,应用SendMessage,等候消息回到后,再进行下一步实际操作::SendMessage(pWnd-GetSafeHwnd(), 0x0111, 0x9D0B, 0 );FineReader鉴别进行以后,能够挑选把結果保留为文档,或是发送到剪贴板,我选择的是让其把鉴别結果发送到剪贴板。一样应用spy++监听消息以及主要参数,随后发送相匹配的消息,如下所示:Message 0111 (Sent)WM_COMMANDwParam 00009DA1lParam 00000000::SendMessage(pWnd-GetSafeHwnd(), 0x0111, 0x9DA1, 0 );
开展那些实际操作以后,FineReader鉴别以后,就可以立即从剪切板获得鉴别結果了,有关编码如下所示if (!IsClipboardFormatAvailable(CF_TEXT))return;if (!OpenClipboard())return;
HGLOBAL hglb = GetClipboardData(CF_TEXT);if (hglb != NULL){LPTSTR lptstr = (char*)GlobalLock(hglb);if (lptstr != NULL){MessageBox(lptstr, 鉴别結果);GlobalUnlock(hglb);}}EmptyClipboard();CloseClipboard();
第四步,实际操作完成以后,关掉可执行程序,一样根据发送消息进行。最开始我以为立即发送WM_QUIT消息就可以了,之后发觉不好,用spy 监听后发觉,应当发送WM_CLOSE消息。::SendMessage(pWnd-GetSafeHwnd(), WM_CLOSE, 0, 0 );到此,操作过程完成。实际上我认为,只需做的好,彻底能够自己做一个页面来,取代它的页面。
流程图软件,流程图一般应用于企业、公司、医疗、教学、生产线上,流程图制作软件是这些办公人员必备的武器之一。流程图可以给我们清楚的展现出一些复杂的数据,让我们分析或观看起来更加清楚明了。一个工场的生产流程,一个公司的运营模式都只需要用一张流程图就可以简单的概括出来。下面给大家推荐的这些流程图制作软件,你尽可以用它们来完成任务。你可以试试看,是不是你想要的。
打包安装程序,打包安装程序专题页面集合了多款热门打包安装程序的应用欢迎下载,安装包制作工具是专业用于制作安装程序的打包类软件,单纯的使用脚本来编写安装程序对于大多数人来说不仅困难而且容易出错,使用安装包制作工具不仅具备初学者上手容易、制作的安装程序功能完善等优点,本合集整合了一系列专业的安装包制作工具,使用简单,功能全面。
多特软件专题为您提供流程图工具,在线流程图工具,流程图绘制工具;安卓苹果版软件app一应俱全。多特软件站只提供绿色、无毒、无插件、无木马的纯绿色工具下载
QQ自动消息发件人是可以用来自动和别人沟通的工具。只需打开对手的QQ对话窗口,打开QQ消息自动发送器,然后把你想说的话无间断地批量发送给对方,让对方感受你磅礴的情感。
是否想知道您的电话是否正在监视,如何监视以及是否正在监视电话?想知道你的个人信息是否泄露?请告诉你一些技巧,看看你的手机是否受到监控!