我遇到了Firefox 4 Beta的问题。
似乎firefox以某种方式忽略了所有安装的LSP提供程序。但它确实使用了winsock。
有什么问题?这是我的LSP问题,我可以解决它吗?
答案 0 :(得分:0)
如果您的LSP已经使用旧版本的Firefox和其他浏览器,那么您的代码可能没有任何问题。
在Vista或更高版本中,有一个新引入的概念称为LSP类别。
当Vista检测到时,Firefox 4 Beta安装程序调用WSCSetApplicationCategory()。它将firefox.exe的LSP类别设置为LSP_INSPECTOR,LSP_REDIRECTOR,LSP_PROXY,LSP_FIREWALL,LSP_INBOUND_MODIFY,LSP_OUTBOUND_MODIFY,LSP_CRYPTO_COMPRESS。这意味着只允许将自己归类为上述之一的LSP挂钩firefox.exe进程。
它只发生在Vista或更高版本中,您的LSP应该可以在以前的Windows上正常工作。检测到Vista后,您的LSP安装程序应调用WSCSetProviderInfo()并对您的LSP进行分类以匹配firefox允许的LSP类别。
有关详细信息,请阅读:http://msdn.microsoft.com/en-us/library/bb513664(v=vs.85).aspx
答案 1 :(得分:0)
我遇到了同样的问题并解决了这个问题。我将我的LSP安装为BASE_PROTOCOL而不是LAYERED_PROTOCOL。
但是,如果您选择编写自己的BASE_PROTOCOL,则必须小心。您的提供商必须与其他LSP一起使用。