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