QWebView显示的网页为空白界面

235 篇文章 186 订阅

先是在VS中运行如下代码:

QWebView *webView = new QWebView(this);
setCentralWidget(webView);
webView->load(QUrl("https://www.youku.com/"));

运行结果如下,是一个空白的界面:

 

百度了很久,发现百度有点废,没有直接找到问题的原因和完整的解决方法,后面我又尝试了QtCreator来写代码和运行,不过仍然无法正常先是网页,还是个空白界面。不过幸运的是我在QtCreator的输出窗口看到了这些提示:

Starting F:\Code\QT\build-QWebViewTest-Desktop_Qt_5_4_1_MSVC2010_OpenGL_32bit-Debug\debug\QWebViewTest.exe...

qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method

qt.network.ssl: QSslSocket: cannot call unresolved function SSL_CTX_new

qt.network.ssl: QSslSocket: cannot call unresolved function SSL_library_init

qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error

qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error

后来我还专门验证了,VS运行时输出窗口没有打印出这些东西。

 

后面又继续找,看到了一些关于OpenSSL的说明,说是需要安装这个东西,我又去下载安装了一个,还是不行。后面又看到有的人说要把“libeay32.dll”和“ssleay32.dll"放到exe所在目录,我在电脑上一搜libeay32.dll,发现好多目录下都有这个:

从上面可以发现其实QT安装后就有这2个dll了,于是我直接把QT目录下的2个dll复制到exe所在目录,然后运行,结果问题解决了,网页可以正常显示了。不过有的网页加载非常缓慢,比如这个优酷的首页加载出来感觉有30S了,哈哈。

 

下面附上2个有用的链接:

这个介绍了OpenSSL在QT中的使用

https://www.cnblogs.com/widekuan/p/4134537.html

 

这个是OpelSSL下载地址

http://slproweb.com/download/Win32OpenSSL_Light-1_1_1c.exe

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Allen Roson

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值