c++ - Qt5 WebKit 未检测到 NPAPI 插件

标签 c++ qt npapi qtwebkit

#include "mainwindow.h"
#include <QApplication>
#include <QtWebKit>
#include <QWebView>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QWebView *view = new QWebView();
    QWebSettings::PluginsEnabled;
    view->load(QUrl("http://www.paulirish.com/demo/multi"));

    view->show();

    return a.exec();
}

我正在尝试在 QtWebkit Webview 中加载一个插件,但它没有被加载。如前所述,我找不到正确的路径 Here ,但它没有加载。我已经添加了环境。变量 QTWEBKIT_PLUGIN_PATH 到系统变量 & MOZ_PLUGIN_PATH 已经在用户变量中,由 Foxit Reader 添加。我尝试将插件 dll 文件放在与 Env 对应的两个目录中。变量,但它没有加载插件。在我将插件放入 Moz_plugin_path 后,firefox 能够检测到该插件。

至于在QTWebview中启用插件我已经尝试使用

QWebSettings::PluginsEnabled;

QWebSettings::globalSettings()->setAttribute(QWebSettings::PluginsEnabled,true);

view->page()->settings()->PluginsEnabled;

但没有找到成功,我使用的是 Windows 8.1 和 Qt 5.2

最佳答案

您应该设置QWebSettings::PluginsEnabled 属性。按照您的操作方式,什么也没有发生。

使用以下代码启用该属性:

QWebSettings::globalSettings()->setAttribute(QWebSettings::PluginsEnabled, true);

将其放在您的QWebView 创建之前。

更多细节请引用文档:

QWebSettings Docs

关于c++ - Qt5 WebKit 未检测到 NPAPI 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21287871/

相关文章:

linux - 处理来自 Firefox 和 Google Chrome 的故障转储

c++ - 堆栈上的内存分配和缓冲区溢出,x86 ISA32

c++ - move 语义和返回 const 值

c++ - LLVM异常处理错误

c++ - QByteArray::right 的问题

google-chrome - NPAPI下降后从chrome读取智能卡

google-chrome - 从扩展内获取 Chrome 选项卡的窗口句柄?

android - Android 上的 windows.h 库

qt - 使用 QML 保存窗口状态

c++ - 在 Qt 信号/槽的上下文中使用观察者模式