首页
社区
课程
招聘
[原创]消除WPS启动弹出窗口
发表于: 2011-10-20 17:33 6319

[原创]消除WPS启动弹出窗口

2011-10-20 17:33
6319

题目:消除WPS启动弹出软件窗口
作者:仙果

题记:先声明,本文没有什么技术含量,只要略懂汇编调试的同学都可以很快做到,并且做的比我速度快。最近在做你懂得OOXX WPS的时,
每次启动WPS进程时都会启动弹出一个软件窗口,这个软件窗口是很没用必要的,而且感觉很别扭,故产生了path 掉此窗口的想法。花了很短的时间找到关键点并且PATH掉。

一 测试环境
windows xp sp2 虚拟机
OllyDbg 1.0

二 窗口表现
如图1所示:


WPS每次启动的时候都要启动这个界面,只有几次看着还好,次数多了就感觉碍眼了,找到改掉它。还是小有成就感的,呵呵。

三 path过程
1 找到关键点
OD启动wps.exe,经过大概10秒钟的代码分析后,0D界面停在了程序的入口点。经过几分钟观察和思考,猜测弹出窗口使用的API函数应该是 ShowWindow,函数原型如下:

BOOL ShowWindow(   HWND hWnd,   int nCmdShow ); 
Value Description 
SW_HIDE    Hides the window and activates another window. 
SW_SHOW    Activates the window and displays it in its current size and position.  
SW_SHOWNA   Displays the window in its current state. The active window remains active. 
SW_SHOWNORMAL   Activates and displays a window. If the window is minimized or maximized, the system restores it to its original size and position. 
An application should specify this flag when displaying the window for the first time. 
004E4FDE  MOV EAX,DWORD PTR DS:[EAX+30]
004E4FE1  TEST EAX,EAX
004E4FE3  JE SHORT wps.004E5009
004E4FE5  PUSH 0                                   ; /ShowState = SW_HIDE
004E4FE7  MOV EDX,DWORD PTR DS:[785028]            ; |wps.00786F34
004E4FED  PUSH EAX                                 ; |hWnd
004E4FEE  CALL <JMP.&user32.ShowWindow>            ; \ShowWindow

004F0F9C  MOV EAX,DWORD PTR DS:[EAX*4+77D0C8]
004F0FA3  PUSH EAX
004F0FA4  MOV EAX,DWORD PTR SS:[EBP-4]
004F0FA7  CALL wps.0049C450
004F0FAC  PUSH EAX                                 ; |hWnd
004F0FAD  CALL <JMP.&user32.ShowWindow>            ; \ShowWindow


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 6
支持
分享
最新回复 (7)
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
2
沙发沙发
2011-10-20 18:50
0
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
3
正在测试仙果大大的方法!
2011-10-20 19:31
0
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
4
又学习了,膜拜一下!
2011-10-20 19:39
0
雪    币: 1491
活跃值: (985)
能力值: (RANK:860 )
在线值:
发帖
回帖
粉丝
5
你的测试结果是什么?
2011-10-20 22:17
0
雪    币: 1708
活跃值: (586)
能力值: ( LV15,RANK:670 )
在线值:
发帖
回帖
粉丝
6

在 ShowWindow 的前面应该有一个创建窗口的地方,把它 nop 试试。
2011-10-20 22:25
0
雪    币: 1491
活跃值: (985)
能力值: (RANK:860 )
在线值:
发帖
回帖
粉丝
7
我是实用主义者,只要满足需要就可以了,你说的办法也可以哈
2011-10-20 22:32
0
雪    币: 278
活跃值: (709)
能力值: ( LV15,RANK:520 )
在线值:
发帖
回帖
粉丝
8
成功让他消失了
2011-10-20 22:36
0
游客
登录 | 注册 方可回帖
返回
//