IE5 的代理服务器信息放在哪?(100分)

A

alum

Unregistered / Unconfirmed
GUEST, unregistred user!
IE5 的代理服务器信息放在哪?

  首先,我要描述我的目的,我想通过一个程序,按一次按钮就实现设置代理
服务器。这里的关键就是要找到代理服务器信息的存放位置。

  步骤如下:

1)按照以往的习惯,当然是在注册表,我设置了如下的代理服务器地址和端口:
  202.10.10.10:8989,当然,为了标示方便,才会用这样的地址和端口。

  设置完毕,关闭IE5,然后搜索注册表,……并未查找到任何信息。

2)用注册表跟踪工具,如同第一步的操作,得到大量的跟踪数据,其中找到了
  奇怪的部分,在此做一描述:
  IE5先是在
  [HKEY_CURRENT_USER
   /Software/Microsoft/Windows/CurrentVersion/Internet Settings]
  建立了两个串值,分别名为:ProxyServer和ProxyOverride,其中分别写入
  代理服务器地址+端口 和 不需要使用代理服务器的地址。但是,过了一
  会儿IE5居然又删掉这两个串值。在此主键下进行过操作的还有两个DW
  ORD值,分别为:MigrateProxy、ProxyEnable

  做一试验,我手工建立ProxyServer和ProxyOverride两条串值,并分别写入:
  "aa:bb","abcdefg",(用于标示,所以未按照其格式填入)再次启动IE
  5,随便选个地址,状态栏写着:正在连结aa,这岂不是说明我已经成功?
  高兴一阵子,立马编写个程序修改此二处之串值。完毕后,此时通过程序修
  改,修改已经成功(我用regedit查看),然后启动IE5,奇怪,又不读我
  写入的内容了(202.99.99.99:8080),再查看REGEDIT,没有变化,这时我
  通过IE菜单:工具-INTERNET选项-连接-我的连接-设置,发现:
  地址和端口栏,填入的,还是手工填入的内容,即第一步中的:
  202.10.10.10:8989。怪异之极!

3)我猜测IE5有可能将代理服务器信息存放在某个文件中,使用文件读写跟
  踪工具,只发现两条可疑的,一个是WININET.DLL,另一个是NOTEPAD.EXE,
  关于WININET.DLL,注册表说其为AutoConfigProxy,但是关键是不是就在这
  个文件中呢?或者是这个文件执行了什么操作??若是以非加密字符串的方
  式保存在磁盘中,那么全盘搜索+字符串搜索为何也是一无所获??

4)用SOFTICE,发现代理服务器信息是在内存中,但是、地址不是固定
  的。可能相对一个IE5的窗口就有一个地址保存着这些信息,那么,是否
  要用直接修改内存的方法来达到我的目的呢??


-----
  
  文已自此。望各位大虾救我于水深火热之中,来世变牛变马……(不能说下
去了)同时询问,要求IE5刷新,读取注册表信息的WINDOWS消息是那
一条。多谢多谢。



 
以"动态"为关键字查询本论坛,大概在查询结果的第10页上,有一篇
关于动态IP的讨论,里面有一味大虾说是可以动态设置IP.
 
光查IP试试不要加什么:8989 有些注册表值不是这么存放的。修改注册表应该
有用。
 
当然, 我没有放过任何线索.我用202.都试过..没用..找不到.
 
i only change ProxyServer from 202.11.11.175 to 202.10.10.175
restart ie5 then find proxy change from 202.11.11.175 to
202.10.10.175
 
我在注册表中查找到:
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/
Internet Settings 下
字符串值 ProxyServer
Dword值 ProxyEnable
并没有被删除!

另外关键还有:
HKEY_LOCAL_MACHINE/Config/0001
/Software/Microsoft/Windows/CurrentVersion/Internet Settings

字符串值 ProxyServer
Dword值 ProxyEnable
这个设置是针对计算机的与用户无关,所以一旦在这里设置应不会改变,试一下
应该没有问题!

 
有个网络加速软件可以动态修改代理服务器,如果有兴趣,可以分析分析
 
一提示...我又在注册表找到了这两个串值....ProxyServer和ProxyOverride...
如同上文第二步...直接修改无用.

re:Charles,我在
HKEY_LOCAL_MACHINE/Config/0001 /Software/Microsoft/Windows/CurrentVersion/Internet Settings
找到ProxyEnable但没有ProxyServer.所以我手工建立了一个ProxyServer串值
并写入202.99.99.99:8080,结果..IE5还是没有读这里的信息...
 
re:Charles,我在
HKEY_LOCAL_MACHINE/Config/0001 /Software/Microsoft/Windows/CurrentVersion/Internet Settings
找到ProxyEnable但没有ProxyServer.所以我手工建立了一个ProxyServer串值
并写入202.99.99.99:8080,结果..IE5还是没有读这里的信息...


上面的HKEY_LOCAL_MACHINE/Config/0001 不一定001,其它的有吗:002,003之类

 
re:charles

只有0001
 
奇怪,在我的注册表中下列主键有两个,你呢?
难道有什么讲究,还是我安装过程中出了问题,你不妨复制一个试试.
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings

BTW:我安装的IE5.0
 
我只是安装了win98 SE(时间限制版).
 
看来只好我来捡这个钱包了:
IE5:
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/Connections
下面有一个二进制值:DefaultConnectionSettings
其中:
第9个字节: $09 表示不使用Proxy
$0B 表示使用

从第17个字节开始的一个PChar类型的字符串,就是你的Proxy:port
(注意是以0结尾的)

BTW:奇怪的是第5个字节,似乎是一个计数器,每次保存设置都会加1.不知道
是不是M$搞的什么鬼名堂?

IE4就简单了:
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings
下面的字符串值:proxyServer




 
还有什么问题吗?
 
没错...我在该键值下发现了该二进制但是数据完全不保存在其中..

而是..保存在我的连结.这可能与我拨号上网有关系:)多谢多谢...

还有...另外一个题外问题.如何将此二进制值写入注册表?难道是
以字符串形式??还有字符串该如何转换成二进制? :) (有趣的是,
我察看delphi5帮助中,某个例子居然编译不通过(条件已经符合))
 
var reg:tregistry;
data:array[...] of byte;

reg.WriteBinaryData(...);

数据放到data里面,然后写进去就可以了.
 
诸位IE5大侠:
我的IE5无法使用代理了(除DELPHI,我用的全正版)
无论如何设置都不认代理!上次无论如何设置都死找代理!后来重装了
不晓得如何解决?
 
顶部