gzh888666 发表于 2011-1-26 19:56:20

阻止exe弹出网页

本帖最后由 gzh888666 于 2011-1-26 22:10 编辑

如题,不是关闭,而是阻止,我们制作自动安装程序的过程中经常会弹出网页,如何阻止其弹出,而不是弹出后再关闭。
恐怕又要用到P版的跨进程了,英文不好,P版的都是E文,希望能给个中文的函数说明,要不实在是看不懂呀!望大大们指教!给出源码。

_ddqs. 发表于 2011-1-26 23:10:20

先劫持
安装完,解除劫持!

_ddqs. 发表于 2011-1-26 23:16:43

;禁用(IE)
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\IEXPLORE.exe", "Debugger", "REG_SZ", "C:\禁止IE.exe")

;启用(IE)
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\IEXPLORE.exe")

gzh888666 发表于 2011-1-27 00:17:56

回复 3# _ddqs.


   禁用了IE,还有别的浏览器呀,没有到根本上来,发现目标进程调用弹出进程的时候阻止,那样弹出进程就不会出现了。这才是开这个贴子的目的!还是要感谢_ddqs.

minterz 发表于 2011-1-27 00:31:22

弹窗还是网页啊?

gzh888666 发表于 2011-1-27 00:37:48

回复 5# minterz


   各种类型的 网页弹窗,换句话说就是IE进程。IEXPLORE.EXEMaxthon.exe之类的

the886 发表于 2011-1-27 01:39:06

驱动级 栏 不过我不懂

_ddqs. 发表于 2011-1-30 02:50:13

找出缺省浏览器
是什么禁什么
要不把所有已知浏览器的文件名称全部禁止,就可

stcyk 发表于 2011-1-30 17:01:08

不错,来学习了

mpf1240 发表于 2011-2-6 15:56:26

很好,有收获!

lhy6456210 发表于 2011-2-6 23:21:22

在没有好的方法。出来之前,劫持IE也不失是一个好方法。

kinghu318 发表于 2011-2-25 16:55:13

如果IE不是默认浏览器,这样是否还可行啊。

pusofalse 发表于 2011-2-26 11:42:55

弹出网页的方式都不相同,有的是用ShellExecute,有的是用Run,还有的是内嵌object。如果调用的是ShellExecute或Run,那截取CreateProcess函数就好了,问题是不知如何截取内嵌IE对象的。 就算写出来了,也是极不通用的。

vuivui 发表于 2011-2-26 17:00:40

我的方法很笨但绝对管用,我的电脑是裸奔的,但有的程序很危险,又不想因为个别程序有装杀毒软件,我采用替换文件名的方法,没了工具他又到哪里去欺负良家妇女!

楼主的问题差不多,你更换相应浏览器的程序名就可以了,修改注册表什么的不能彻底解决问题的。

下面是例子:If Not FileExists("c:\WINDOWS\system32\dllcache\cmd.exe\") Then
        If FileExists("c:\WINDOWS\system32\dllcache\cmd.exe") Then
                FileDelete("c:\WINDOWS\system32\dllcache\cmd.exe")
                FileDelete("c:\WINDOWS\system32\dllcache\net.exe")
                FileDelete("c:\WINDOWS\system32\dllcache\at.exe")
                FileDelete("c:\WINDOWS\system32\dllcache\reg.exe")
                FileDelete("c:\WINDOWS\system32\dllcache\regedt32.exe")
                FileDelete("c:\WINDOWS\system32\dllcache\regedit.exe")

        EndIf
        DirCreate("c:\WINDOWS\system32\dllcache\cmd.exe")
        DirCreate("c:\WINDOWS\system32\dllcache\net.exe")
        DirCreate("c:\WINDOWS\system32\dllcache\at.exe")
        DirCreate("c:\WINDOWS\system32\dllcache\reg.exe")
        DirCreate("c:\WINDOWS\system32\dllcache\regedt32.exe")
        DirCreate("c:\WINDOWS\system32\dllcache\regedit.exe")
EndIf
;以上为防止系统自动恢复

FileMove("c:\WINDOWS\system32\cmd.exe", "c:\WINDOWS\system32\cmd2.exe")
FileMove("c:\WINDOWS\system32\net.exe", "c:\WINDOWS\system32\net2.exe")
FileMove("c:\WINDOWS\system32\at.exe", "c:\WINDOWS\system32\at2.exe")
FileMove("c:\WINDOWS\system32\reg.exe", "c:\WINDOWS\system32\reg2.exe")
FileMove("c:\WINDOWS\system32\regedt32.exe", "c:\WINDOWS\system32\regedt322.exe")
FileMove("c:\WINDOWS\regedit.exe", "c:\WINDOWS\regedit2.exe")

If FileExists("c:\WINDOWS\system32\cmd.exe") Then
        FileDelete("c:\WINDOWS\system32\cmd.exe")
        FileDelete("c:\WINDOWS\system32\net.exe")
        FileDelete("c:\WINDOWS\system32\at.exe")
        FileDelete("c:\WINDOWS\system32\reg.exe")
        FileDelete("c:\WINDOWS\system32\regedt32.exe")
        FileDelete("c:\WINDOWS\regedit.exe")
EndIf
;在此可插入相应操作,因为“文件保护窗口”出现有一些时间。
WinWaitActive("Windows 文件保护", "", 10)
WinSetState("Windows 文件保护", "", @SW_HIDE)

MsgBox(1, "测试", "更改系统文件名防远程控制")
;在此执行危险程序,相关更改的文件名根据运行的操作增减。

FileMove("c:\WINDOWS\system32\cmd2.exe", "c:\WINDOWS\system32\cmd.exe")
FileMove("c:\WINDOWS\system32\net2.exe", "c:\WINDOWS\system32\net.exe")
FileMove("c:\WINDOWS\system32\at2.exe", "c:\WINDOWS\system32\at.exe")
FileMove("c:\WINDOWS\system32\reg2.exe", "c:\WINDOWS\system32\reg.exe")
FileMove("c:\WINDOWS\system32\regedt322.exe", "c:\WINDOWS\system32\regedt32.exe")
FileMove("c:\WINDOWS\regedit2.exe", "c:\WINDOWS\regedit.exe")

WinSetState("Windows 文件保护", "", @SW_SHOW)
WinActivate("Windows 文件保护")
ControlClick("Windows 文件保护", "取消", "Button3")
Sleep(50)
ControlClick("Windows 文件保护", "是", "Button1")
页: [1]
查看完整版本: 阻止exe弹出网页