【问题标题】:CWindowImpl::Create() Failing in Windows 7CWindowImpl::Create() 在 Windows 7 中失败
【发布时间】:2011-08-24 16:07:17
【问题描述】:

我有一个 Firefox 插件 dll,它在 Windows XP 中运行良好,但在 Windows 7 中崩溃。问题在于 CWindowImpl::Create() 无法创建窗口(窗口句柄为 NULL)。此外,GetLastError() 返回 NULL。

我正在使用 ATL 3.0。我正在考虑这是否会成为问题,因为像 CComModule 这样的许多接口类现在已经过时了。但令人惊讶的是,相同的 API 也适用于 IE9。所以,无法下定论。我还没有找到解决方案。在 msdn 论坛中找到了类似的查询 - http://social.msdn.microsoft.com/Forums/en-US/vcmfcatl/thread/2f200b88-622a-4f7c-9833-7d08bac4fa5f/ 但还没有解决方案。

任何帮助将不胜感激。

拉维什

【问题讨论】:

    标签: firefox windows-7 npapi browser-plugin


    【解决方案1】:

    我在 Windows 7 的 FF 插件中找到了解决此问题的方法。答案在于 DEP(数据执行保护)。此功能在我的 Windows 7 机器中启用。禁用此功能后,我可以在 Firefox 中运行我的插件。以下是如何在 Windows 7 中禁用 DEP。

    1. 转到命令提示符
    2. 执行命令 bcdedit /set nx AlwaysOff
    3. 重启机器(以上设置需要重启才能体现)

    在启用 DEP 的理想情况下,如果要运行插件,则必须使用最新版本的 Windows SDK 构建插件。

    原文链接-http://techbaraha.blogspot.com/2011/12/firefox-plugin-on-windows-7-workaround.html

    【讨论】:

      猜你喜欢
      • 2011-03-04
      • 1970-01-01
      • 2012-01-16
      • 1970-01-01
      • 1970-01-01
      • 2017-01-18
      • 1970-01-01
      • 2012-09-16
      • 2012-11-02
      相关资源
      最近更新 更多