2014-01-22 3 views
0
#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(); 
} 

Я пытаюсь загрузить плагин в Web-сайте QtWebkit, но он не загружается. Я не смог найти правильный путь, как упомянуто Here, но это не загрузка. Я добавил Env. Переменная QTWEBKIT_PLUGIN_PATH для системной переменной & MOZ_PLUGIN_PATH уже находилась в пользовательской переменной, добавленной Foxit Reader. Я попытался разместить файл dll плагина на обоих каталогах, соответствующих Env. Переменные, но это не загрузка плагина. После того, как я увидел плагин в Moz_plugin_path, firefox смог обнаружить плагин.Qt5 WebKit не обнаруживает плагин NPAPI

Что касается включения плагина в QTWebview я попытался с помощью

QWebSettings :: PluginsEnabled;

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

вид-> страница() -> настройки() -> PluginsEnabled;

но успеха с ни один из них, я с помощью Windows 8.1 и Qt 5.2

ответ

1

Вы должны установить атрибут QWebSettings::PluginsEnabled. То, как вы это делаете, ничего не происходит.

Включить атрибут со следующим кодом:

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

Положите это до вашего QWebView создания.

Обратитесь к документации для получения более подробной информации:

QWebSettings Docs

+0

Nope does not work. Как я упоминал в вопросе, я попробовал три способа включения плагина. Попробовал это снова, поместив атрибут перед созданием qWebView :( –

+0

Btw, если плагин пытается получить доступ к сетевым соединениям, он сможет сделать это правильно, так как это плагин, который делает свое дело. Плагин, который я пытаюсь использовать, - это TUIO-клиент, и клиент TUIO отправляет сообщения в порт, из которого он слушает. И по умолчанию включен Javascript? Пробовал Документы, но он очень помог, сделал все, что упоминалось там –

+0

Да, плагин сможет доступ к сетевым соединениям. AFAIK, Javascript включен по умолчанию, особенно после всех изменений в модуле QtWebKit 5.2. Вы пытались включить плагины на уровне страницы? ('view-> page() -> settings() -> setAttribute (QWebSettings :: PluginsEnabled, true); '? –

0

я прошел через точно такой же ситуации. что решила моя проблема - установить Adobe Flash Player плагин для NPAPI. Современные веб-браузеры, такие как Google Chrome и Firefox, часто распространяются со встроенным флеш-плеером. Таким образом, Chrome/Firefox работает хорошо, не гарантирует, что у вас есть правильный плагин для флеш-памяти, который установлен правильно в масштабе всей сети, что необходимо для Qt5WebKit, чтобы включить поддержку локального плагина для Flash-контента.

поэтому убедитесь, что установлен плагин Adobe Flash Player для NPAPI, и надеемся, что это решит вашу проблему.

Смежные вопросы