Cannot load pepper flash plugin in QtWebEngine with Qt5.6
-
I made a simple web browser but when I access to
https://get.adobe.com/jp/flashplayer/
It says
Adobe Flash Player is already installed, but disabled
However as I read http://doc.qt.io/qt-5/qtwebengine-platform-notes.html It says that pepper flash plugin should be automatically loaded if there is a proper dll file. I checked my C:\Windows\System32\Macromed\Flash\ and I'm sure that I have a pepflashplayer32_21_0_0_213.dll there.
Then I also set
QWebEngineSettings *websetting = QWebEngineSettings::defaultSettings(); websetting->setAttribute(QWebEngineSettings::PluginsEnabled, true);
Similarly, I set my webView->setting() and webView->page()->setting() but still no hope.
but still no hopes. Anyone knows how to enable flash with QtWebEngine?BTW. I did not compile qtwebengine nor qt by myself.
-
All I do is to copy pepflashplayer.dll and manifest.json from Google Chrome (I don't have standalone pepper flash) to C:\Windows\System32\Macromed\Flash and then in main() or MainWindow() ctor to enable plugins globally:
QWebEngineSettings::globalSettings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
Edit: I just noticed you are using 32 bit version of pepper flash (pepflashplayer32_*.dll) so make sure you are using also 32-bit Qt or if you want to use 64-bit Qt then copy 64-bit version of flash-player.
...I'm not sure if 64bit Qt will work with 32 bit player (I copied my dll from C:\Program Files (x86)\ which is odd because my Chrome browser is 64 bit but there was nothing in C:\Program Files\ - but it works )
OT: I find it really confusing how this browser:
Google Chrome Version 50.0.2661.75 m (64-bit)
Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36
is actually installed in
C:\Program Files (x86)\Google\Chrome\Application\50.0.2661.75\PepperFlash -
All I do is to copy pepflashplayer.dll and manifest.json from Google Chrome (I don't have standalone pepper flash) to C:\Windows\System32\Macromed\Flash and then in main() or MainWindow() ctor to enable plugins globally:
QWebEngineSettings::globalSettings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
Edit: I just noticed you are using 32 bit version of pepper flash (pepflashplayer32_*.dll) so make sure you are using also 32-bit Qt or if you want to use 64-bit Qt then copy 64-bit version of flash-player.
...I'm not sure if 64bit Qt will work with 32 bit player (I copied my dll from C:\Program Files (x86)\ which is odd because my Chrome browser is 64 bit but there was nothing in C:\Program Files\ - but it works )
OT: I find it really confusing how this browser:
Google Chrome Version 50.0.2661.75 m (64-bit)
Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36
is actually installed in
C:\Program Files (x86)\Google\Chrome\Application\50.0.2661.75\PepperFlash@ThatDud3
Thanks a lot! I get it work now.
It seems that the newest standalone pepflashplayer*.dll as official documentation writes does not work.
My OS is 64bit but I'm targeting 32bit platform. I just copied chrome's pepflashplayer.dll to both directories and it works.