1

我正在编写一个应用程序,一旦用户浏览某个 url,它就会变得“有用”。

我想向我的应用程序添加功能,一旦用户浏览此 url,它将自动启动,我正在考虑编写某种看门狗来触发它。

我的问题是,当用户浏览到 url 时是否有一种通用的方式来获得通知,我想至少支持 IE 和 FireFox,chrome 和 safari 是不错的。

我阅读了有关 DDE 和 WWW_RegisterURLEcho 的信息,但据我了解,FireFox 不支持它,而且我编写的小示例也不适用于 IE。

先感谢您

还有一些问题**

Url Monikers 和异步可插入协议对我有帮助吗?火狐支持吗?

4

2 回答 2

1

如果您可以控制该网站,则可以让它将 cookie 写入计算机。然后让您的应用程序监控该 cookie。

于 2010-10-22T14:29:53.493 回答
0

您可以通过多种方式在许多不同的层次上实现这一点。

在最高级别,您可以实现浏览器插件。这一层没有跨浏览器解决方案,可以让您编写一次代码并为每个浏览器工作。在最简单的情况下,Firefox,您可以将其完全实现为 Javascript + XUL 插件,并使用内置的 XPCom 接口 ( nsIProcess ) 来启动您的辅助进程。对于 IE,您需要编写处理DWebBrowserEvents2::BeforeNavigate2的 COM、C++ 和 win32 BHO。这是最难做的事情。您可以使用 Safari、Chrome 和其他网络浏览器的机制来实现相同的行为,但难度不同。

在下一个级别,您可以实现一个类似于Fiddler2的 HTTP 代理,它首先通过您的本地代理重定向所有 HTTP 流量。每个浏览器都有不同的代理设置配置方式,但它们基本上都是注册表设置或配置文件。

在最基本的层面上,您可以嗅探所有从机器发出的 IP 流量,类似于 Wireshark 的做法,然后只查找对您的 URL 的 http 请求。这可能更难以编码,但适用于所有浏览器,而无需进行任何特殊的每个浏览器配置。您可能需要编写驱动程序。我不知道,我从来没有在堆栈中做过这个级别的工作。

于 2010-10-22T20:40:43.470 回答