像 IDM(互联网下载管理器)这样的程序是如何工作的?

soa*_*dos 7 windows-7 download-manager

我的意思并不是说它打开了多个连接。我更感兴趣的是它如何监视浏览器的活动并识别何时可以下载文件(音乐文件、视频或其他)。

这是它添加到浏览器的东西吗?是否以某种方式扫描所有流向 PC 的流量?它是一种代理吗?

har*_*ymc 4

基本上有两种机制,这取决于类似 IDM 的产品是自行安装在操作系统中还是仅安装在浏览器中。

如果它通过操作系统作为成熟产品安装,则在 Windows 中,它会设置系统范围的挂钩,这与防火墙和防病毒产品使用的机制相同,用于监视来自 Internet 的网络活动。对于 Windows,这被描述为:

挂钩是应用程序可以拦截事件(例如消息、鼠标操作和击键)的机制。拦截特定类型事件的函数称为挂钩过程。挂钩过程可以对其接收到的每个事件进行操作,然后修改或丢弃该事件。

如果它仅安装在浏览器中,它使用与Greasemonkey相同的机制来执行Javascript 注入。这需要在浏览器中安装一个附加组件/插件,它将扫描传入的 HTML 中的可下载项目,并将它们列在侧面(通常在浏览器的状态栏上),或者修改 HTML 本身以包含“下载” “可下载元素附近的按钮。