如何在C#中动态阻止网站?

我想从用C#编写的Windows服务中动态阻止某些URL。 我不想通过写入hosts文件来做到这一点。

例如,我想阻止urlhttp://example.com (在所有浏览器中),但也会在7点到8点之间阻止http://example.com/another

这可能吗,我该怎么办?

最好的问候,安德鲁

您可以使用Windows防火墙API 。 请参阅John Cole撰写的文章, 托管类以查看/操作Windows防火墙

现在,我展示了块的概念。 谷歌网站。 我希望这个解决方案能帮到你。

  private void BlockWebsite_Click(object sender, EventArgs e) { String path = @"C:\Windows\System32\drivers\etc\hosts"; StreamWriter sw = new StreamWriter(path, true); String sitetoblock = "\n 127.0.0.1 google.com"; sw.Write(sitetoblock); sw.Close(); MessageBox.Show("Site Blocked"); } }