搜索
查看: 9016|回复: 7

求助个问题,怎么禁止某个进程弹出子窗口

[复制链接]

65

主题

953

帖子

5036

积分

荣誉会员

Rank: 8Rank: 8

积分
5036
发表于 2011-8-29 08:35:42 | 显示全部楼层 |阅读模式
本帖最后由 qqmmcc 于 2011-8-29 22:59 编辑

程序点击之后会弹出一个子窗口,怎么禁止他弹出呢??或者是隐藏它也可以
aaa
回复

使用道具 举报

6

主题

167

帖子

903

积分

荣誉会员

爱生活,爱拉芳。

Rank: 8Rank: 8

积分
903
发表于 2011-8-29 09:00:07 | 显示全部楼层

[i=s] 本帖最后由 quickerfans 于 2011-8-29 11:41 编辑 [/i] 第一时间查找到然后win.close它可以吗, 子窗体应

本帖最后由 quickerfans 于 2011-8-29 11:41 编辑

第一时间查找到然后win.close它可以吗,
子窗体应该是程序通过给系统发画窗口的消息,系统才给他画出来 的吧,HOOK这个画窗口的消息不知道好不好实现。
winex.wait
win.close

专注、深入。
回复

使用道具 举报

13

主题

67

帖子

537

积分

三级会员

Rank: 4

积分
537
发表于 2011-8-29 11:47:51 | 显示全部楼层

[i=s] 本帖最后由 yslookne 于 2011-8-29 12:04 编辑 [/i] hook掉那个载入的API函数。。 CreateWindowE

本帖最后由 yslookne 于 2011-8-29 12:04 编辑

hook掉那个载入的API函数。。  CreateWindowExA
回复

使用道具 举报

40

主题

565

帖子

3044

积分

新手入门

超级初学者

积分
3044
发表于 2011-8-29 18:13:12 | 显示全部楼层

本进程可以用lujjh的apihook,其它进程暂时无解,需要你写一个dll让它载入,改写api 第一时间close效果不好,鼠标焦点会丢失。

本进程可以用lujjh的apihook,其它进程暂时无解,需要你写一个dll让它载入,改写api
第一时间close效果不好,鼠标焦点会丢失。
http://echong.taobao.com 各类话费充值,请多支持!
回复

使用道具 举报

75

主题

849

帖子

5002

积分

六级会员

The only one

Rank: 9Rank: 9Rank: 9

积分
5002
发表于 2011-8-29 20:33:59 | 显示全部楼层

[color=#008000]//监视外部窗口的创建销毁,可以使用shellhook,例如: [/color][color=#000000] [/color

//监视外部窗口的创建销毁,可以使用shellhook,例如:

//监视窗口创建销毁

import win.ui;
/*DSG{{*/
var winform = win.form(parent=...; text="aardio Form";right=448;bottom=249 )
winform.add(
edit={ dr=1;dl=1;bottom=239;vscroll=1;right=437;left=8;multiline=1;top=13;text=
"";z=1;db=1;dt=1;edge=1;cls="edit" }
)
/*}}*/

//导入shellhook支持库
import win.util.shellhook

//创建shellhook窗口
shellhook = win.util.shellhook(winform)
shellhook.onShellHook=
function(hshell,hwnd){

   
//获取线程ID,进程ID
    var tid,pid = win.getThreadProcessId(hwnd)
   
if(tid== thread.getId()){
        
/*return 如果不想临视本线程在这里退出*/
    }
   
   
//判断钩子拦截到的消息类型
    select(hshell ) {
        
case 0x1/*_HSHELL_WINDOWCREATED*/ {  
            winform.edit.text +=   
"一个窗口创建"+hwnd+"进程ID:" + pid + "线程ID:" +tid + '\r\n    标题:' + win.getText(hwnd) + '\r\n\r\n'
        }
        
case 0x2/*_HSHELL_WINDOWDESTROYED*/{
            winform.edit.text +=
"一个窗口销毁"+hwnd+"进程ID:" + pid + "线程ID:" +tid  + '\r\n   标题:' + win.getText(hwnd) + '\r\n\r\n'
        }   
        
case 0x4/*_HSHELL_WINDOWACTIVATED*/{
            winform.edit.text +=
"一个窗口激活"+hwnd+"进程ID:" + pid + "线程ID:" +tid  + '\r\n   标题:' + win.getText(hwnd) + '\r\n\r\n'
        }
        
     }  
}

winform.show()
win.loopMessage();

小时候,幸福是一件东西,拥有就是幸福; 长大了,幸福是一个目标,达到就是幸福; 成熟后,发现幸福原来是一种心态,领悟就是幸福.
回复

使用道具 举报

10

主题

88

帖子

505

积分

三级会员

Rank: 4

积分
505
发表于 2017-3-15 11:37:53 | 显示全部楼层
做个标记
回复

使用道具 举报

10

主题

88

帖子

505

积分

三级会员

Rank: 4

积分
505
发表于 2017-3-15 11:47:43 | 显示全部楼层
web页面的script执行window.close();时,web.form不关闭,ie默认返回提示“您查看的网页正在试图关闭窗口。是否关闭此窗口”


  1. var wb = web.form(winform
  2. ,0x40000/*_UIFLAG_THEME*/
  3. ,0x10/*_DLCTL_DLIMAGES*/ | 0x40000000/*_DLCTL_SILENT*/  
  4. );
  5. //wb.noScriptErr = true; //不提示脚本的异常,此项可屏蔽提示
  6. //方法一
  7. wb.BeforeNavigate2 = function( pDisp, url, flags, targetFrame, postData, headers, cancel ) {
  8.         if(flags=0)        winform.close()
  9.         return url, Flags, TargetFrameName, PostData, Headers,Cancel;
  10. }

  11. //方法二
  12. wb.WindowClosing = function( IsChildWindow, Cancel ) {
  13.         winform.close()
  14. }  
复制代码
回复

使用道具 举报

10

主题

88

帖子

505

积分

三级会员

Rank: 4

积分
505
发表于 2017-3-15 11:51:37 | 显示全部楼层
就是这个提示:

就是这个提示

就是这个提示

~什么都会点,什么都不会~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-10-21 03:00 , Processed in 0.093750 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表