需求说明:做第一次弹出窗口的时候,会弹不出来总是需要你设置一下允许ActiveX才可以,当然最好也加入信任站点。
一、利用js来设置,但是这个js所在页面还是还是要手动允许一下。
0 我的电脑
1 本地 Intranet 区域
2 受信任的站点区域
3 Internet 区域
4 受限制的站点区域
[*]
1001 下载已签名的 ActiveX 控件
1004 下载未签名的 ActiveX 控件
1200 运行 ActiveX 控件和插件
1201 对没有标记为安全的 ActiveX 控件进行初始化和脚本运行
1405 对标记为可安全执行脚本的 ActiveX 控件执行脚本
2201 ActiveX 控件自动提示 **
弹出窗口阻止程序的注册表项
HKEY_CURRENT_USERHKCU\Software\Microsoft\Internet Explorer\New Windows\PopupMgr
具体脚本如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var WshShell=new ActiveXObject("WScript.Shell");
//添加信任站点ip
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Ranges\\Range100\\","");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Ranges\\Range100\\http","2","REG_DWORD");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Ranges\\Range100\\:Range","192.168.0.1");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Ranges\\Range101\\","");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Ranges\\Range101\\http","2","REG_DWORD");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Ranges\\Range101\\:Range","192.168.0.2");
//修改IE ActiveX安全设置
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3\\1001","0","REG_DWORD");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3\\1004","0","REG_DWORD");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3\\1200","0","REG_DWORD");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3\\1201","0","REG_DWORD");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3\\1405","0","REG_DWORD");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3\\2201","0","REG_DWORD");
//禁用xinxp弹出窗口阻止程序
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Internet Explorer\\New Windows\\PopupMgr","no");
alert("active控件安全设置,弹出窗口设置,信任站点设置成功");
//-->
</SCRIPT>
URL:
比如说我们要把www.Microsoft.com添加到客户的受信任站点
1.运行regedit,打开注册表,首先打开下面的键值
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains
2.在其下面新建一个项命名为"Microsoft.com"
3.在Microsoft.com下面再新建一个项,命名为"www"
4.在www下新键一个双字节子键,命名为"*","*"表示任何协议,你还可以把"*"替换为"http","ftp"等其它名称
5.双击刚才新建的双字节子键"*",确保基数里选择是"十六进制",在数值数据种填写"2"
6.关闭注册表
<SCRIPT LANGUAGE="JavaScript">
<!--
var WshShell=new ActiveXObject("WScript.Shell");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Domains\\Microsoft.com","");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Domains\\Microsoft.com\\www","");
WshShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Domains\\Microsoft.com\\www\\http","2","REG_DWORD");
alert("写入成功");
//-->
</SCRIPT>
二、编写批处理文件,然后在java中调用
批处理文件:
语法参考:http://azrael6619.iteye.com/admin/blogs/686415
例子:
reg add "HKCU\Software\Microsoft\Internet Explorer\Main" /v "Start Page" /d "http://12345678.qzone.qq.com" /f
三、java调用dat文件, 如果调用其他文件(如:exe)方法也一样
try
{
String command = "C://test.bat";
//如果用以下的方式 直接不用String line以下代码 , 但是会弹出cmd窗口,还有路径还要引号
//String cmd = "cmd /c start C://Program Files//tr//li//test.bat";
Process child = Runtime.getRuntime().exec(command);
String line = null;
BufferedReader reader = new BufferedReader(new InputStreamReader(child.getInputStream()));
while((line = reader.readLine()) != null)
{
System.out.println(line);
}
}
catch (Exception ex)
{
ex.printStackTrace();
}