打开microsoftspy++,在工具栏选择Find工具,在弹出的windowsearch窗口中拖动Findertool的图标至目标窗口即可.
Windows程序都是基于消息机制的,每个程序中都会有各种各样的消息,
如果想通过消息来控制程序的运行,我们只用关心程序中的命令消息
(WM_COMMAND)就行了,其他关于程序界面等等的消息,可以不管。要查看程
序运行的消息,使用VisualStudio中自带的工具spy++。多看阅读免费下载-多看阅读app7.48.28 安卓最新版
打开spy++,选择spy|Windows,然后就会显示出当前的所有窗口,一
些主窗口中的字窗口也会显示出来,比如说工具栏窗口,编辑窗口等等。在
其中找到目标窗口。
以下是我运行spy++时显示的部分spy++窗口,其中有FineReader窗口
001702A6-tooltips_class32
000C01FE-"M"MSCTFIMEUl
001C02A0-"DefaultIME"IME
002401DO-tooltips_class32
003B009A-"Microsoft Spy++-[Windows2]"Afx:100000:0:10011:0:2600515
00300244-"M"MSCTFIMEUl
002E032E-FineReaderTipWindowClass
004F02B4-tooltips_class32
00410254-"Untitledbatch-ABBYYFineReader7.0ProfessionalEdition"
FineReader7MainWindowClass
003E0370-"DDEServerWindow"OleDdeWndClass
005002DC-ComboLBox
000D02B6-ComboLBox
00270320-ComboLBox
00AB0366-ComboLBox
00A000A4-tooltips_class32
(注:以上是使用printscreen抓图,然后使用FineReader识别的结果)
选择FineReader窗口,点击右键,弹出菜单中选择“Messages”,即可开始
监听该窗口的消息。你要是实际操作一下就会发现,消息非常多,根本无法从中
找到自己想看的消息。为了选出我们想看的消息,我们需要对消息进行过滤。选择
Messages|Options,弹出菜单中选择MessagesTab页,可以看见很多消息过滤选项。
我想监听WM_COMMAND消息,所以我ClearAll之后,只选择General消息。
以上设置好之后,开始监听消息,然后到FineReader窗口中点击Read快捷按钮
(安该按钮之后,FineReader开始识别当前选择的图片),然后回到spy++,监听到
的消息仍然不少,但是可以找到我们要查看的消息。如果你只按了一个按钮或者一个
菜单,在监听到的消息中间,你应该可以找到两个WM_COMMAND消息,一个发送出去的
消息,一个返回的消息,相信信息见下文。
以下是我在spy++中监听到的消息,其中有一个WM_COMMAND消息
<00039>00410254R...................WM_NOTIFY
<00040>00410254S...................WM_COMMANDv/NotifyCode:0(sentfroma
menu]wlD:4O2O3
<00041>00410254S...................WM_GETTEXTcchTextMax:512
lpszText:0012E200
<00042>00410254R...................WM_GETTEXTcchCopied:72
lpszText:0012E200f'U'l
(注:以上是使用printscreen抓图,然后使用FineReader识别的结果)
双击这个WM_COMMAND消息,可以看见关于这个消息的详细信息,如下
WindowHandle001F00AA//FineReader窗口句柄
NestingLevel2
Message0111(Sent)//WM_COMMAND消息ID,这个消息是发送出的消息
WM_COMMAND
wParam00009D0B//WM_COMMAND消息的两个参数
lParam00000000
在spy++中监听到的另外一个WM_COMMAND消息
<00089>00410254S...................WM_GETTEXTcchTextMax:512
lpszText:0012E1E0
<00090>00410254R...................WM_GETTEXTcchCopied:71
lpszText:0012E1E0(V")
<00092>00410254S...................WM_NOTIFYidCtrl:177pnmh:0012F988
(注:以上是使用printscreen抓图,然后使用FineReader识别的结果)
双击这个WM_COMMAND消息,可以看见关于这个消息的详细信息,如下
WindowHandle001F00AA//FineReader窗口句柄
NestingLevel2
Message0111(Return)//WM_COMMAND消息ID,这个消息是的消息
WM_COMMAND
wParam00009D0B//WM_COMMAND消息的两个参数
lParam00000000
既然可以查看到程序中消息的ID及消息的参数,那么我们可以自己编写
程序,向被控制的程序发送对应的消息,从而控制程序的运行。
第一步,在自己的程序中打开目标程序,使用一下API,具体请查看MSDN。
HINSTANCEShellExecute(
HWNDhwnd,
LPCTSTRlpOperation,
LPCTSTRlpFile,
LPCTSTRlpParameters,
LPCTSTRlpDirectory,
INTnShowCmd
);
在我的程序中,目标程序为FineReader,打开程序的代码如下:
HINSTANCEhRet=0;
hRet=ShellExecute(m_hWnd,
NULL,
"D:\ProgramFiles\ABBYYFineReader7.0Professional
Edition\FineReader.exe",
NULL,
NULL,
SW_HIDE);
if((int)hRet<=32)
{
MessageBox("打开FineReader失败!");
}
第二步,找到目标窗口,获得目标窗口的句柄
CWnd*pWnd=NULL;
//可能程序启动较慢,需要尝试多次才能找到目标窗口
while(pWnd==NULL)
{
Sleep(1000);
pWnd=FindWindow(NULL,"Batch-ABBYYFineReader7.0Professional
Edition");
}
第三步,向目标窗口发送消息。
可以使FineReader开始运行时,自动打开最后一次运行的一个Batch,所以我们只用
发送消息,
让FineReader开始识别就可以了。通过spy++可以查看到FineReader识别的WM_COMMAND
信息如下
Message0111(Sent)
WM_COMMAND
wParam00009D0B
lParam00000000
按以下方式向FineReader发送这个消息,使用SendMessage,等待消息返回后,再进
行下一步操作
::SendMessage(pWnd->GetSafeHwnd(),0x0111,0x9D0B,0);
FineReader识别完成之后,可以选择把结果保存为文件,或者发送到剪贴板,我选
择的是让其
把识别结果发送到剪贴板。同样使用spy++监听消息及其参数,然后发送对应的消息,
如下:
Message0111(Sent)
WM_COMMAND
wParam00009DA1
lParam00000000
::SendMessage(pWnd->GetSafeHwnd(),0x0111,0x9DA1,0);
进行这些操作之后,FineReader识别之后,就可以直接从剪贴板得到识别结果了,
相关代码如下
if(!IsClipboardFormatAvailable(CF_TEXT))
return;
if(!OpenClipboard())
return;
HGLOBALhglb=GetClipboardData(CF_TEXT);
if(hglb!=NULL)
{
LPTSTRlptstr=(char*)GlobalLock(hglb);
if(lptstr!=NULL)
{
MessageBox(lptstr,"识别结果");
GlobalUnlock(hglb);
}
}
EmptyClipboard();
CloseClipboard();
第四步,操作完毕之后,关闭目标程序,同样通过发送消息完成。
最先我以为直接发送WM_QUIT消息就可以了,后来发现不行,用spy++监听后发现,
应该发送WM_CLOSE消息。
::SendMessage(pWnd->GetSafeHwnd(),WM_CLOSE,0,0);
至此,基本操作实现。其实我觉得,只要做的好,完全可以自己做一个界面来,取
代它的界面。
使用microsoftspy++工具可以检查系统中所有窗口的层次关系,查看其属性遍历窗口,捕捉并查看特定窗口的消息。查看任意windows界面的handle,caption,class信息.另外DELPHI和BCB里有一个WINSIGHT好像和SPY++差不多。
展开内容
末日微光手游下载-末日微光游戏1.0.8 安卓版
剑与盾手游下载-剑与盾游戏0.0.17.0 最新版
儿童学汉语拼音下载-儿童学汉语拼音app5.3安卓最新版
shizushell官方app下载最新版本-ShizuShell1.0.0 官方版
音效音乐播放器客户端下载-音效音乐播放器1.0.3 安卓免费版
赛车竞速助手app下载-赛车竞速助手1.0.0 安卓版
捉迷藏偷偷看一眼下载-Hide and Seek- Peek A Boo(捉迷藏偷偷看一眼安卓版)1
xhomebarpro软件下载-X Home Bar - Pro3.0.2 最新版
一刀传世破天服传奇下载-一刀传世破天服手游1.0 官方版
中外名著故事电子小报模板15套for a3/a4 word格式
哮天动漫app官方下载-哮天动漫app1.0.0 最新版
通卡出行公交车app下载-通卡出行掌上公交下载2.1.7 安卓版
百笑天下(手机笑话)V1.7 安卓版
西游伏妖篇百度版下载-西游伏妖篇手游百度版1.1.2 安卓最新版
军网商城惠军机票打折软件-惠军机票苹果版1.1.0 ios最新版
昵窝手机版下载-昵窝app苹果版1.0 官网ios版
爆炸80秒手游下载-Blast the 80s(爆炸80秒安卓版)1.1 安卓版
时钟同步汉化版下载-时钟同步(ClockSync)1.2.6 安卓汉化修改版
幸福林州app下载-幸福林州5.5.5 安卓版
小学英语辅导软件-小学英语辅导app3.6.42 安卓最新版
河北北方学院附属第一掌上医院app1.1.3 安卓手机客户端
圣魔之血7.2天使的哭泣地图下载-圣魔之血7.2正式版【附隐藏英雄密码+攻略】
定时关机软件下载最新版-力兴定时关机软件1.0.0.3 官方版
星展造粉修改版下载-星展造粉(微信加粉丝神器)2.3 安卓最新修改版
伴刻视频app2.0 安卓手机版
有鱼严选客户端下载-有鱼严选app1.2.1 安卓最新版
极路由3路由器app下载-极路由3路由器app1.0 安卓免费版
神都风云手游下载-神都风云手游正版1.0安卓版
兽医在线手机客户端下载-兽医在线1.0 安卓版
永恒之井2.77正式版下载-永恒之井v2.77 正式版
中国北京燃气门户下载-中国北京燃气门户app1.0 iPhone/ipad版
低空飞行手游1.04.0 单机版
8.6/811.3M
极客公园是一款最前沿的科技综合交流社区。这里有最新最热的科技资讯,喜欢科技的小伙伴们不要错过了。同时还有各地的科技爱好者,你可以同他人一起交流结交朋友,非常有趣...
疯狂原始人战旗来袭九游版下载-疯狂原始人战旗来袭九游版1.18.0官方最新版
9.2/1,667.9M
疯狂原始人战旗来袭官方版是一款动漫改编的冒险游戏,在游戏中你可以选择不同类型的原始人类角色,探索万年以前的地球,寻找更多神奇的自然现象,还有很多未解之谜等待我们...
圣魔之血6.5天使的哭泣下载-圣魔之血6.5天使的哭泣正式版【附隐藏英雄密码+攻略】
9.3/1,225.6M
圣魔之血天使的哭泣是一张十分热门的魔兽防守地图,这里为大家带来的是圣魔之血6.5天使的哭泣最新正式版下载,在新的版本中新增加了新英雄巫师暂时没有转生和混血修改为...
新倩女幽魂口袋版互通版下载-新倩女幽魂口袋版安卓苹果互通版1.12.9安卓最新版
8.2/165.4M
新倩女幽魂口袋版安卓苹果互通版是一款玄幻题材的角色扮演手游,还原经典原著剧情和人物,带你体验百人团战,装备副本等玩法,还有多样社交囊括师徒、结拜、夫妻、帮会、梦...
刀锋铁骑内测完整版客户端下载-刀锋铁骑客户端1.0 官方最新版【含激活码】
7.6/1,567.5M
刀锋铁骑客户端其实就是腾讯公司历经了很长时间才研发成功最新游戏。它不但剧情非常吸引人,而且就连武器都是真实还原了中国冷兵器时代的样子。时刻让你来感受在冷兵器时代...
重装上阵网易版官方下载-重装上阵网易版0.100.356 官服版
8.6/462.2M
重装上阵网易版官网下载,是官服最新版本,重装上阵是一款科幻题材手游,游戏中战斗玩法非常的多样,可以自由的竞技,有新手指引,可以按照要求来升级,玩家可以组建属于自...
7.8/1,246.8M
亿通淘宝宝贝下载工具其实就是专门为卖家使用的一款淘宝宝贝软件,他能够实现快速的辅助淘宝宝贝信息,其中就包括文字,csv样式等,他也能大批量的进行下载,使其能被卖...
7.9/280.6M
全民突击是2015年最火的一款3D枪战手游,结合了FPS和TPS等射击模式。喜欢全民突击的小伙伴有福了,本次小编带来的是全民突击攻略大全,有角色图鉴大全、关卡通...
想不想修真游戏下载-想不想修真app3.6.0手机版【附攻略】
9.4/1,795.1M
想不想修真一款放置类修仙类游戏,玩累了图片的仙侠类游戏,就可以试一试文字向的仙侠,游戏以纯文字和部分图片显示各种数据,可以直接的观看到角色的状态和事情发生的真相...
神秘大厦游戏下载-神秘大厦Mystic Mansion游戏3.4.1 官方正版
9.2/781.3M
神秘大厦MysticMansion游戏真的不错,游戏画风超棒的,玩法是类似消消乐+建立家园,剧情对话英文通顺易懂,第一次登录就有丰富的奖金拿,非常治愈的游戏!神...
8.3/389.0M
盲盒、电子产品、服装、玩具、书籍、DVD等在线购物平台,主要的购买销量就在盲盒,这里的盲盒就是大家所知道的盲盒,含括各种各样的产品都在里面的,你花不同的价格购买...
7.8/1,205.9M
在电脑上面需要直接的对各种各样的视频在线的解析观看的话,可以使用微粒视频无忧软件,一键免费的解析你需要看的视频,目前支持主流的各大视频网站!微粒视频无忧软件支持...
航天一院党建云app下载-航天一院党建云app官方版2.0.2 最新版
8.4/312.1M
航天一院党建云是一款党建云教育平台,不仅为党员提供最新的党建新闻资讯,还包含了丰富的党建教育课程,体验更丰富的教育体系,更多优秀的教育资源都可以在这里看到,非常...
9.8/1,014.3M
现在不管你喜不喜欢足球,你都是需要了解一下世界杯的一些基本的情况,不然你就会被很多的人鄙视的,所以小编就给你介绍下面的这款世界杯扫盲手机版给你吧!世界杯扫盲介绍...
4399动画片app-4399动画片大全手机下载1.0.2 官方最新安卓版
8.3/626.1M
4399动画片app是一看动漫的手机软件,全自动实时更新动漫,打造最实用的动画片库,提供最新、最全、最热门的动画片,喜欢的朋友就赶紧下载4399动画片大全手机吧...
天天静听最新版下载-天天静听app下载安装4.2.1 官方版
9.4/786.4M
天天静听音乐播放器,是一款包含白噪音、触发音等声音,助眠用户入睡的工具APP。不管你是单纯的想要听音乐,还是想要放松的时候加一个背景音,或者是想要减轻自己的压力...
9.1/1,015.2M
碧桂园线上买房,最近因为疫情的原因,大家都不能出门,但是购房买房仍然是大家的刚需,大家可以在手机上来看房子。碧桂园线上买房app特色:1、一款可以无接触的购买房...
8.7/1,306.4M
全球警戒是一款很有意思的正版战争策略游戏。游戏以经典红色警戒为题材背景,高度还原了经典玩法,你可以建造各种战车工厂、兵营等进行战斗。利用强大的策略性,使用基洛夫...
oppo版本率土之滨下载-率土之滨oppo版8.1.8 最新版
8.6/1,658.8M
率土之滨oppo版客户端开局就送福利,这是一款策略国战的游戏,和列王的纷争有点类似,在游戏中我们需要不断的去招兵买马,联合其他玩家,争夺他人土地,真正意义上的策...
7.9/1,532.0M
不灭铁骑最新版是2021全新策略手游,超级良心的slg,上线即给你10w铁骑,海量资源,征战四方开阔疆土,开局送的资源非常丰厚,每日宝箱还能开出英灵亚瑟,海量资...
8.6/915.7M
齐河文旅云是一款很好用的旅游综合服务app。这里专门为齐河打造的旅游平台,包含了齐河当地文化和特色。想去齐河旅游的小伙伴福利来了,这里有最全的旅游攻略和相关景点...
9.6/516.2M
一款战斗冒险手游,采用精美的游戏画面,玩家在游戏中需要控制自己手中的角色来对手展开战斗,这是一场为了荣誉的战争,所以你一定要胜利,赶紧来试试吧。 游戏...
9.5/544.5M
老来约app是一款非常优质的聊天交友软件,该软件里面汇聚了海量的优质用户,这里每一个用户都是经过实名注册,全方位认证的,大家可以在这里放心的交友聊天,这里的聊天...
太极ios9.3.1完美越狱工具-太极苹果ios9.3.1越狱工具2.0.2 官方完美越狱版【内含越
8.1/1,168.5M
苹果ios9.3.1的系统更新之后应该是有不少的朋友是想完美的越狱的,如果你不知道怎么去完美的越狱的话,建议你试试本站为你带来的太极苹果ios9...
8.2/799.6M
拉针益智是一款非常考验玩家大脑的手游,设计了很多的游戏关卡,主要玩法是通过每个关卡拉针的方式让上方的小球,顺利的向下滚落,掉落到指定的位置。拉针益智手游特色1、...