阻止指定的URL

时间:2011-03-17 10:51:15

标签: delphi

我想在Delphi中编写一个应用程序,用于过滤操作系统中的请求URL(不仅仅是Web浏览器),如果匹配,则阻止它或将URL的内容更改为空白。问题是 - 我不知道从哪里开始寻找。你能帮我解决一些信息吗?

3 个答案:

答案 0 :(得分:1)

我认为你在谈论DNS服务。通常,DNS服务存在于外部,路由器,ISP或第三方(如www.openDNS.org) 但您可以编写自己的,在PC上运行它,并设置您的Internet设置以将其用作DNS服务器。 我怀疑很多恶意软件都是这样的......

此外,这种事情可以完全没有编程 - 只需在C:\ WINDOWS \ system32 \ drivers \ etc \ hosts中编辑您的主机文件(它是一个没有扩展名的文本文件)。 那里的任何东西都应该胜过。

此外,在开始编写应用程序之前,请查看OpenDNS。如果它是个人使用的应用程序,您可能会发现您不需要它。如果它将成为商业产品,那么这就是您需要满足或击败的可用性和实用性的标准。​​

答案 1 :(得分:1)

http://www.mail-archive.com/delphi-talk@elists.org/msg01558.html - 由Francois提出的文字PIETTE引用了吼叫(如果链接不可用):

  

“有几种方法可以实现你的目标。我看到的两个主要方面是:   1)写LSP(分层服务提供商)   2)编写代理服务器

     

第一个是Delphi不可能的(至少我是这么认为的。如果有人知道的话   如何使用Delphi编写LSP,我很乐意得到代码。)

     

第二个 - 编写代理 - 使用ICS的Delphi或多或少容易   组件。请参阅ICS网站(http://www.overbyte.be)上的“usermade”链接。   使用此选项,您必须配置IE以使用代理:IE菜单/工具   / Internet选项/连接/网络参数/使用代理然后   输入IP地址(如果代理在同一台计算机上运行,​​则为127.0.0.1)和端口   号码(挑选任何你喜欢的人,例如8080)。一旦IE配置为   使用代理,它会将所有请求发送到代理。然后代理将   向目标服务器发出真实请求并将数据返回给IE。什么   重要的是你得到所有在IE中输入或间接使用的URL   (点击链接),你可以真正依赖它们到目标   服务器或伪造并回答你自己说拒绝访问页面。

     

在ICS网站上,在用户自制页面上,您甚至可以找到HTTP代理   零件。如果您需要有关此组件和/或整个ICS的帮助,   请使用ICS支持邮件列表(与此列表相同的服务器)。看到   ICS网站上的“支持”链接,以获取支持详情。“

LE:似乎这个问题可能是重复的 Using delphi to block websites

答案 2 :(得分:0)

如果有连接使用SetTcpEntry终止连接非常简单,那么如果有任何与端口80阻塞的远程服务器连接,请使用GetExtendedTcpTable api locate