我希望有一个正在运行的应用程序或服务,它可以按某个时间表禁用除特定应用程序之外的所有应用程序对 Internet 的访问。
我正在尝试创建一个可以在程序控制下打开或关闭的过滤器。不仅仅是 IP 地址和端口,我还希望能够阻止特定的应用程序,就像 Zone Alarm 和其他软件防火墙让您阻止一样。
例如,iexplore.exe、skype.exe、firefox.exe、aim.exe。但仍需要允许其他应用程序根据需要进行连接。
它必须在 Vista 和 XP 上工作,但我有点希望该方法在每个平台上都会有所不同。
基本上,过滤器必须将网络通信绑定回发出请求的可执行文件,然后允许或拒绝它。
更新:
至少在Vista上,看起来我想在 WFP 的 ALE 层中使用过滤器。
在XP上,我仍在寻找最好的方法。我真的需要编写设备驱动程序并处理内核内容吗?我只是一个低级的应用程序开发人员。现在杀了我。
更新 2:
目前正在研究 Pre-Vista 系统的 PfCreateInterface 和相关的 Pf* API。