打开microsoftspy++,在工具栏选择Find工具,在弹出的windowsearch窗口中拖动Findertool的图标至目标窗口即可.秋水相机app下载安装最新版-秋水相机app1.0.1 手机版
Windows程序都是基于消息机制的,每个程序中都会有各种各样的消息,
如果想通过消息来控制程序的运行,我们只用关心程序中的命令消息
(WM_COMMAND)就行了,其他关于程序界面等等的消息,可以不管。要查看程
序运行的消息,使用VisualStudio中自带的工具spy++。
打开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++差不多。
万博万博体育u 积玉桥乐鱼 众博跟bob 体彩手机客户端 娱乐城送体验金展开内容
一建准题库app下线-一级建造师准题库app4.90 手机版
五岳乾坤羁绊侠客游戏下载-五岳乾坤羁绊侠客手游1.0新服版
会计考试做题练习app下载-会计考试做题练习app1.0.4 安卓版
中超英雄官方版下载-中超英雄手游官方版1.0 官方正式版
粤警掌上课堂app1.0 手机ios版
高清壁纸和搞笑动图app1.4.4 最新版
宠明app1.2.2 手机版
趣微小说app下载-趣微小说免费版1.0.1最新版
梦浮为卿歌游戏下载-梦浮为卿歌手游1.0.2最新礼包版
早教乐园下载-早教乐园1.9安卓最新版
三亚房网安卓版下载-三亚房网app10.00.0005 安卓版
维修技术联盟专用工具包(收集提供技术人员常用的程序)V4.00 免费版
米加梦幻城堡世界下载-米加梦幻城堡世界9.8官方正版
幼儿学拼音下载-大鱼拼音APP1.3.0官方专业版
叫叫接金蛋游戏下载-叫叫接金蛋游戏2.3.2 安卓版
9.0/1,615.9M
洪桥考研app是一款为想要考研的朋友开发的手机软件,为同学们带来了丰富的考试题目,精彩的视频讲解,还可以为您定制学习计划!软件介绍专注考研服务,基于大数据的个性...
支票打印软件下载-金卡支票打印软件下载(多功能支票打印软件)1.6.0316 官方版
8.5/987.9M
有些时候我们要用到一些常用的电子凭证,金卡支票打印软件下载(多功能支票打印软件)很好用,而支票打印软件免费版提供现金支票、转账支票、业务委托书、电汇凭证、银行进...
核爆计算模拟器下载安装-核爆计算模拟器(NukeBlast)1.6.1 安卓版
8.8/1,847.2M
核爆计算模拟器是一款计算核爆范围的软件,该软件能帮助用户较为精准的计算出核爆炸压、辐射范围和后果预测,帮助核武器爱好者更好的了解核爆的杀伤力,也为核灾应对提供出...
9.3/1,002.7M
这款软件是一款头条阅读软件,在上面你可以随时随地阅读众多资料,超多不同的资讯信息可以查看,也可以快速的进行分享资讯,赚钱金币!伴头条app介绍伴头条APP,系深...
ocr扫描大师app下载-ocr扫描大师手机版1.0 安卓最新版
9.8/559.3M
很多的人都是需要使用手机对一些图片进行识别而获取到一些文字的,现在就可以给你的手机上面免费的推荐下面的这款ocr扫描大师手机版,赶快来试试!一款快速扫描识别图片...
余罪的经典台词语录下载-余罪电视剧经典台词完整打包版doc 免费版
8.8/465.0M
最近超级火的一部网剧余罪大家应该都看过,除了张一山精湛的演技外,里面的台词应该也让不让网友印象深刻,小编今天收集了余罪电视剧里非常经典的台词语录,结合打包制作成...
9.2/1,827.3M
为大家带来的是物理万有引力的应用ppt,适用于高中物理课程的教学使用,精选优质图片文字素材,讲解十分的详细透彻,便于学生们的理解,欢迎下载使用。物理万有引力的应...
Windonws8清理垃圾工具-Windonws8清理垃圾神器1.0 绿色免费版
9.6/55.1M
win8的系统在现在也是很多的人在使用的,使用的人都是知道的,这个系统一更新就会有很多的垃圾,有很多的是你清理不掉的,现在就可以用Windonws8清理垃圾神器...
9.7/761.3M
母婴用品一站式服务连锁机构。一款专业权威的母婴用品的服务软件可爱可亲,在这款软件中你可以买到婴儿的产品,实现里母婴一条龙的服务,喜欢的朋友快来下载吧。可爱可亲手...
9.1/599.3M
三国战天下九游版是一款以三国为题材的卡牌手游,游戏有着绚丽的战斗画面,精美的3D特效技能特效,英勇武将有你操控,玩家在游戏中将体验最正统的三国剧情,欢迎下载体验...
8.0/1,584.3M
山海大荒经手游是一款中国古代修仙修真手游,以上古华夏大地为背景,众多珍奇异兽,你将在蛮荒之地开启冒险,疯狂吞噬进化成大boss,喜欢玩这种食鲲游戏的朋友可以来尝...
沃家提速app-沃家提速联通宽带提速软件1.4.0 安卓免费版
9.1/1,484.3M
想要让自己的宽带速度更加的快么,联通宽带提速软件能够为联通宽带用户带来有效的网络提速效果,有需要的朋友可以下载试试。联通宽带提速软件新版特性1、新增宽带续费。宽...
10.0/1,888.2M
九妖值得玩是一款超级实用的手机游戏盒子app。这里包含了海量的高质量手游可以选择,每天都有最新最热的手游资讯推送,让你第一时间就可以玩到新游戏。同时不同的版本可...
7.6/259.0M
ie参数修改器是一款可以帮助用户修改IE浏览器的参数,并且还可以自动恢复。有需要的可以来东坡下载使用。千万不要错过了。ie参数修改器说明IE参数修改大师是一款小...
7.7/347.6M
随时的为一些喜欢玩赚钱的用户提供一个全新的赚钱方式,在这里你可以随时的享受到不一样的赚钱乐趣,也是大家都是关注的充电赚钱的模式!千幻充电夺宝app介绍千幻充电夺...
查看
8.8/980.5M
玩股票就需要有一款不错的股票分析应用,小编觉得下面的这款草根股神手机版的就是非常的适合给现在的散户朋友手机上使用的一款炒股软件!草根股神手机版介绍2014年度大...
7.7/1,119.6M
俺去搜QQ万能工具箱是一款可以解决QQ任何问题的工具箱软件。非常得不错。有需要的可以来东坡下载使用!俺去搜QQ万能工具箱说明俺去搜QQ万能工具箱是一款用于QQ的...
boujou软件下载-摄像机跟踪软件(boujou)5.0.2 官网最新破解版【附破解补丁】
9.4/1,463.1M
boujou是一款功能非常强大的摄相机跟踪软件,东坡小编带来的是boujou最新破解版,它可以自动地为使用者寻找上百个特征点,在3D模式下进行巨量的数据分析,演...
8.2/871.4M
武动九天商城版是一款上古异兽的手游,版本独创最大福利开局!上线满级VIP,附赠10万绑元!每日签到送装备寻宝100连!首充开放GM商城,道具售1元宝!升级经验加...
兽人领地手机版下载安装-兽人领地Steam移植1.12 正版
8.3/1,956.9M
塔防类型的小游戏对玩家来说早已是司空见惯了,而兽人领地游戏凭借着极为独特且新颖的机制使得其具有独特的魅力,也能给玩家带去很独特的游玩体验感。这个游戏的玩法是策略...
长宁交通app下载-长宁交通信息平台(错时停车查询)1.0 手机客户端
8.0/1,695.9M
每个大城市都有停车难的相关问题,上海长宁区打造的最新长宁交通app就解决了此问题,它能查询附近小区的停车位,它能错时停车的服务功能,能帮你正确快速找到停车位,非...
七彩云端app民法典下载最新版-七彩云端app民法典4.1.9 最新版
7.5/1,125.6M
七彩云端app民法典是一款于云南省提供各种便民服务以及相关资讯的平台,该软件最新上线答题活动,用户们可以在这里答题,了解相关民法内容,感兴趣的朋友们快来东坡下载...
10.0/1,415.2M
节拍器app是专为乐器爱好者而量身打造的一款模拟真实节拍软件,用户通过该软件稍加练*可以非常准确地掌握各种音乐节拍。同时,它还可以和手机/平板电脑共同配合使用,...
9.2/609.3M
宠店大师app员工版是一款宠物店专用软件,适用于店家或者员工使用,可以帮助管理自己的账单和每日工作流程,各种洗澡剪毛订单,宠物用户出售订单和客户管理等!宠店大师...