登录社区:用户名: 密码: 忘记密码 网页功能:加入收藏 设为首页 网站搜索  

文档

下载

图书

论坛

安全

源码

硬件

游戏
首页 信息 空间 VB VC Delphi Java Flash 补丁 控件 安全 黑客 电子书 笔记本 手机 MP3 杀毒 QQ群 产品库 分类信息 编程网站
  立华软件园 - 安全技术中心 - 技术文档 - Delphi 技术文章 | 相关下载 | 电子图书 | 攻防录像 | 安全网站 | 在线论坛 | QQ群组 | 搜索   
 安全技术技术文档
  · 安全配制
  · 工具介绍
  · 黑客教学
  · 防火墙
  · 漏洞分析
  · 破解专题
  · 黑客编程
  · 入侵检测
 安全技术工具下载
  · 扫描工具
  · 攻击程序
  · 后门木马
  · 拒绝服务
  · 口令破解
  · 代理程序
  · 防火墙
  · 加密解密
  · 入侵检测
  · 攻防演示
 安全技术论坛
  · 安全配制
  · 工具介绍
  · 防火墙
  · 黑客入侵
  · 漏洞检测
  · 破解方法
 其他安全技术资源
  · 攻防演示动画
  · 电子图书
  · QQ群组讨论区
  · 其他网站资源
最新招聘信息

IE 代理服务器设置程序实现
发表日期:2003-08-18作者:yarshray[] 出处:  

本文其实.没有什么价值.写出来也是处于好玩.因为.最近闲的要命.所以总喜欢去些BBS聊天室之类的地方打发时间可是.突然发现这些地方总是喜欢记录IP真是麻烦.别人一跟踪马上就查出你的位置.实在是不爽.所以.就只好设置代理服务器.IE的设置是带这个功能的.所以很简单.只要设置就可以了.不过,实在觉得.那样太简单了.所以就想自己做一个程序实现.可是没什么眉目.不过突然想到腾讯的浏览器也有类似功能.可是.整个程序才916K,所以不用说肯定是有动态连接库的协助的.既然如此.那么只用导出来看看就知道了.于是.使用dumpbin这个PE工具Imports一下就全明白了象其他程序一样.通常USER32,Kernel32.GDI32....这些都不是今天的主角.Wininet.Dll才是今天的主角.这里导出了.三个函数.其中InternetsetOption才是关键因素.在MSDN中很快查到了.所以一切都很顺利.该函数的重点参数在第二个参数上面dwOption.所以继续参考MSDN就知道了INTERNET_OPTION_PROXY和INTERNET_OPTION_SETTINGS_CHANGED.第一个看名字也知道是设置代理.第二个是负责切换设置的.OK有了这些是否就OK了呢.是的基本OK不过不要忘记了这样做必须重启IE.因为IE也是依赖注册表地.所以去注册表找找.很快就明白了.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings几乎谁都知道的Internet设置键.没什么可说的.知道了这些下面程序来实现就简单了.因为根本没什么技术.只是调用API和写注册表.

首先用Delphi来实现.delphi实现很简单.因为delphi的单元WinInet中就封装了该API调用的所有文档所以就简单多了.首先做一级面向对象的封装.一个对象TsetProxy,然后定义两个数据分别是代理主机和代理端口.然后一个负责调用的函数.代码如下:

unit Unit1;

interface

uses

  Registry,WinInet

type

 TSetProxy=class

  private

  { Private declarations }

  procedure SetReg(FMProxy:string);

 public

  { Public declarations }

  Proxy: string;

  port:string;

  constructor Create(Proxy,Port:string);

  procedure SetProxy();

//  procedure SetProxy(const fProxy,fPort: string);

end;

implementation

//实际设置代理

procedure TSetProxy.SetProxy;

var FProxy: string;

  Pinfo: INTERNET_PROXY_INFO;

begin

FProxy:=Format('%s:%s',[self.Proxy,self.port]);

Pinfo.dwAccessType := INTERNET_OPEN_TYPE_PROXY;

Pinfo.lpszProxy := pchar(proxy);

InternetSetOption(nil, INTERNET_OPTION_PROXY, @Pinfo, SizeOf(PInfo));

InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);

self.SetReg(FProxy);

end;

//SetReg负责读写注册表

procedure TSetProxy.SetReg(FMProxy:string);

var

reg: Tregistry;

begin

reg:=Tregistry.Create;

 try

  reg.RootKey := HKEY_CURRENT_USER;

  if reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Internet Settings', True) then

  begin

   reg.Writestring('ProxyServer', FMproxy);

   reg.WriteInteger('ProxyEnable', integer(true));

  end

 finally

  reg.CloseKey;

  reg.free;

 end;

end;

constructor TSetProxy.Create(Proxy,Port:string);

begin

self.Proxy:=Proxy;

self.port:=Port;

end;

end.

测试运行都恨正常.

我来说两句】 【发送给朋友】 【加入收藏】 【返加顶部】 【打印本页】 【关闭窗口
中搜索 IE 代理服务器设置程序实现

 ■ [欢迎对本文发表评论]
用  户:  匿名发出:
您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。

最新招聘信息

关于我们 / 合作推广 / 给我留言 / 版权举报 / 意见建议 / 广告投放 / 友情链接  
Copyright ©2001-2006 Lihuasoft.net webmaster(at)lihuasoft.net
网站编程QQ群   京ICP备05001064号 页面生成时间:0.00234