我的程序需要监控程序运行时访问过的所有网站。
我已经找到了一些方法来做到这一点,我想知道哪种方式“最好”(我最好的意思是,最容易实现并提供最佳性能)。该程序仅适用于较新版本的Windows!它应该适用于x86和x64。 我需要能够监控的浏览器是IE,FireFox,Chrome和Opera。
我可以观看每个浏览器的历史文件,但这是一个非常糟糕的方法(较新版本的浏览器可能会使代码停止工作等)
我可以检查每个窗口(HWND)并查看它是否是访问网站的浏览器......但这真的是一个很好的方法吗?如果是这样我该怎么办?链接或代码片段谢谢:)
我可以使用数据包嗅探器,但如果我只想要网址,那就太过分了......
代理不是一个好的解决方案(我是对的吗?)因为它会减慢浏览速度(至少我认为是这样)......
或者我可以用其他方式做得更好吗?
答案 0 :(得分:1)
由于您需要处理多个浏览器,因此代理解决方案将成为最常用的强大方式 - 如果设计得当,不应产生太多开销。数据包嗅探过于复杂。
您可能能够破解支持当前所需浏览器当前版本的特定togeher,但请注意“hack”这个词,并添加“维护噩梦”。
此外,你可能想重新考虑你的标签 - qeustion与.net,vc ++或vstudio没什么关系 - 它可能需要win32 api,但是:)