【问题标题】:How does the Firebreath plugin run on Windows XP?Firebreath 插件如何在 Windows XP 上运行?
【发布时间】:2017-05-09 02:57:04
【问题描述】:

Windows7使用VS2013开发的一个插件,在ie8上完美运行,现在转入Windows XP,ie8浏览器无法加载插件。

我采取措施:

  1. VS2013在Windows 7上,选择v120_xp,但是没有没有效果
  2. 在虚拟机中安装XP系统VS2010,再次运行Firebreath demo,出现如下错误:

无法打开程序数据库“d:\firebreath-master\build\npapicore\npapicore.dir\debug\vc100.idb”

我该怎么办?@taxilian

【问题讨论】:

  • @taxilian请帮帮我!

标签: firebreath


【解决方案1】:

一般来说,在 stackoverflow 上叫一个特定的人来回答问题并不是特别合适。我确实监控了这个标签,所以我看到了它,但只是为了让你知道 =]

插件可能无法加载的三个基本原因:

  1. 插件未正确注册
    • 这应该是不可能的,因为firebreath会为你解决这个问题;当然,不能保证没有任何问题。解决此问题的唯一方法是了解注册的工作原理并仔细检查所有内容。
  2. 插件 DLL 包含系统上不可用的库
    • 这将是我对正在发生的事情的第一个猜测;最好的检查方法是使用Dependency Walker 查看它有哪些可能不可用的依赖项; ieshims.dll 是一个常见的问题,当它工作时看起来好像它不存在,但大多数其他任何东西都可能是一个问题。 vs2013 添加的依赖项很有可能在 vs2010 中不存在;我还要验证 firebreath 中 win_common.h 中设置的目标对于 Windows XP 是否正确。
  3. 插件实际上可能正在加载,但随后立即崩溃。
    • 最简单的测试方法是在插件生命周期的早期添加对__debugbreak() 的调用;这会让它看起来像是崩溃了,但可以让你附加一个调试器。

如果这些都没有帮助,我建议使用firebreath-dev google 组,这是一个更适合讨论的地方。

【讨论】:

  • 非常感谢!您的回答是我的问题的解决方案,但我还有另一个问题。在没有更改 wsx 的情况下,出现“错误 47 错误 LGHT0204:ICE38:组件 cmp89D2F4E963FB530291488843FA376445 安装到用户配置文件。它必须使用 HKCU 下的注册表项作为其 KeyPath ,而不是文件。".
  • 还有一个问题,在项目中使用Def.cmake,target_link_libraries(${PROJECT_NAME} debug "${ROOT_PATH}/DevelopKit/libs/XXX.lib");target_link_libraries(${PROJECT_NAME} release "${ROOT_PATH}/DevelopKit/libs/XXX.lib"),VS2013谁总是自动给我在“连接->输入”添加“release.lib”,我该怎么做,谢谢。
  • 请不要在 cmets 中提出其他问题。如果你有一个讨论,你可以考虑 firebreath-dev 谷歌组。这不仅在 stackoverflow 上是不好的做法,而且我无法在未格式化的评论中说出你在问什么
  • 真的非常感谢,发现很多问题都是dll缺失的原因。Dependency Walker很有用。很酷。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多