这个名字确实有点不太好。。因为刚开始我想到这个工具是在今天早上看到一个别人的代理工具的时候,突然想做的,没有好好规化,结果后来代码越写越多。。不过收获很大。

先看界面,因为是简单实现一下,所以就不要吐槽界面了。。

刚开始想的思路就是先去一个经常发布代理IP的网页去采集。然后解析成一条条的信息。然后显示出来。中途遇到几个问题,一个就是在做代理验证的时候,没有用多线程,导致直接界面无响应。另一个就是DataGridView控件要实现对一个数组的绑定,需要的一个实体对象。

这部分就是先得到网页源码,然后通过IndexOf和LastIndexOf定位到ip组的位置。这是通过分析源码来确定参数的。最后通过 标签分割成字符数组。数组元素类似于112.25.12.37:80@HTTP;江苏省 移动,然后就是继续分割成一部分,构造了一个IPEntity的数组。在按钮中绑定到DataGridView中即可 IPEntity类的定义如下:这里面设置了一个status属性,用于后面代理验证的时候进行标记。

然后是验证ip可用性的部分。这部分主要的代码是验证DataGridView中的ip地址可用性

但是实际运行后就知道,会出现界面无响应。因为长时间的网络访问。为此,在按钮的单击事件中,使用简单的线程后台来操作

然后其实就没什么了。至于后面的设置iE代理不过就是对注册表的操作了

不好的地方希望大家指正。因为只是一个简单的原型。完成我想的功能。所以不必过分苛求。关键的代码就是上面的了。 项目源码下载:FreeAnony 参考: http://blog.csdn.net/cisso/article/details/4467188

http://www.blogjava.net/aoneany/articles/281344.html

http://www.cnblogs.com/server-you/archive/2006/09/20/509342.html

http://topic.csdn.net/u/20090514/01/82749a36-ffef-4da5-a607-260dccbad84b.html

http://www.haogongju.net/art/1485280

http://developer.51cto.com/art/200903/115200.htm

http://qianshao.blog.51cto.com/935360/201782