1、在Qt中使用 WebKit 浏览器核心
使用 QtWebKit 需要在工程文件(*.pro)中加入:
1.           QT +=webkit  
2.           QT += network 
2、QtWebKit的flash支持
QtWebKit 到固定的路径(NPAPI插件厂商的安装路径)下载入flash控件,如果需要flash支持,确保一下文件存在:
1.           C:\WINDOWS\system32\Macromed\Flash\NPSWF32.dll 
npswf32.dll就是 QtWebKit 需要的flash插件,由 micromedia 官方提供。
3、使用qt插件
分发程序时,需要打包 qt\plugins\imageformats 目录内的 dll 文件(它们是qt的图形图像插件),才能支持 jpg、png、gif等的图形图像格式;最好连 plugins\codecs 目录内的dll文件一起打包,他们是用来支持各种语言编码的(包括中文支持);除此以外还有其他一些qt插件。
4、如果使用了qt插件,需要设置qt插件路径
qt应用程序需要指定加载qt插件的目录,以便载入上面提到的 plugins\imageformats 、plugins\codecs 等目录内的dll文件。
标准方式是通过 qt.conf 文件(放在qt应用程序相同文件夹内)设置插件目录的路径。但是qt.conf内必须使用绝对路径,这不太容易确定。
可以直接在应用程序内指定 qt插件的路径,例如:
1.           QApplication aApp(argc,argv);  
2.           QApplication::setLibraryPaths(QStringList(QCoreApplication::applicationDirPath()+"/plugins/")); 
在调用 QCoreApplication::applicationDirPath() 前,必须先创建一个 QApplication的对象
5、中文支持:
1.           QTextCodec *codec=QTextCodec::codecForName("GB2312");  
2.           QTextCodec::setCodecForLocale(codec);  
3.           QTextCodec::setCodecForCStrings(codec);  
4.           QTextCodec::setCodecForTr(codec); 
6、使用 windows api
只要 #include<windows.h>就可以向MFC一样使用windows的api 函数,以及windows的数据类型,例如:LPCTSTR。
为了保持跨平台特性,在用到windows api 函数和 windows数据类型的地方加上宏判断:
1.           #ifdefined(Q_WS_WIN)  
2.           ... ...  
3.           #endif 
7、让QtWebKit使用缓存
1.            QNetworkDiskCache *diskCache=newQNetworkDiskCache(this);  
2.           QString location=QDesktopServices::storageLocation(QDesktopServices::CacheLocation);  
3.           diskCache->setCacheDirectory(location);  
4.           this->ui->wndHtmlView->page()->networkAccessManager()->setCache(diskCache);  
5.           QDesktopServices::storageLocation(QDesktopServices::CacheLocation); 
返回的是系统的缓存目录的路径
8、windows eclipse中无法启动 debug , 会报错:
1.           gdb: unknown target exception 0xc0000135 at 0x7c984ed1 
可能是因为用 gdb.exe 启动你的程序时无法找到qt库的dll, 只要在环境变量加入 qt/bin 的路径就好了
9、windows7/vista 中的 UAC 支持
建一个资源文件 resource.rc ,内容:
1.           1    24    "manifest.xml" 
资源类型为 24 , id 为 1 ,资源内容在 manifest.xml 中; manifest.xml 的内容为:
1.           <?xml version="1.0" encoding="UTF-8" standalone="yes"?>   
2.           <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">   
3.           <assemblyIdentity   
4.           version="1.0.0.0"   
5.           processorArchitecture="X86"   
6.           name="test.exe.manifest"   
7.           type="win32"   
8.            />   
9.           <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">   
10.       <security>   
11.       <requestedPrivileges>   
12.       <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />   
13.       </requestedPrivileges>   
14.       </security>   
15.       </trustInfo>   
16.       </assembly>  
在项目的 .pro (或 .pri) 文件中加入:
1.           RC_FILE = resource.rc  
2.           (RC_FILE  只在 windows 平台上有效) 
然后 clean project 重新编译
10、exe 版本信息 ,在资源文件中加入:
1.            # if defined(UNDER_CE)  
2.           #  include <winbase.h> 
3.           # else  
4.           #  include <winver.h> 
5.           # endif  
6.            
7.           VS_VERSION_INFO VERSIONINFO  
8.               FILEVERSION 1,0,0,0  
9.               PRODUCTVERSION 1,0,0,0  
10.           FILEFLAGSMASK 0x3fL  
11.       #ifdef _DEBUG  
12.          FILEFLAGS VS_FF_DEBUG  
13.       #else  
14.           FILEFLAGS 0x0L  
15.       #endif  
16.           FILEOS VOS__WINDOWS32  
17.           FILETYPE VFT_DLL  
18.           FILESUBTYPE 0x0L  
19.           BEGIN  
20.               BLOCK "StringFileInfo"  
21.               BEGIN  
22.                   BLOCK "040904B0"  
23.                   BEGIN  
24.                       VALUE "CompanyName", "公司名字\0"  
25.                       VALUE "FileDescription", "文件描述\0"  
26.                       VALUE "FileVersion", "文件版本\0"  
27.                       VALUE "ProductName", "产品名字\0"  
28.                       VALUE "产品版本", "0.1.0\0"  
29.                       VALUE "LegalCopyright", "版权信息\0"  
30.                   END  
31.               END  
32.           END  
33.       /* End of Version info */ 

Qt webkit插件相关知识的更多相关文章

  1. OpenCV&amp;Qt学习之四——OpenCV 实现人脸检测与相关知识整理

    开发配置 OpenCV的例程中已经带有了人脸检测的例程,位置在:OpenCV\samples\facedetect.cpp文件,OpenCV的安装与这个例子的测试可以参考我之前的博文Linux 下编译 ...

  2. HTML入门基础教程相关知识

    HTML入门基础教程 html是什么,什么是html通俗解答: html是hypertext markup language的缩写,即超文本标记语言.html是用于创建可从一个平台移植到另一平台的超文 ...

  3. [转帖]xserver相关知识汇总

    xserver相关知识汇总 https://blog.csdn.net/QTVLC/article/details/81739984   本文主要是从以下几个方面介绍xorg-xserver 相关的知 ...

  4. podSpec文件相关知识整理

    上一篇文章整理了我用SVN创建私有库的过程,本文将整理一下有关podSpec文件的相关知识. podSpec中spec的全称是“Specification”,说明书的意思.顾名思义,这是用来描述你这个 ...

  5. 学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等)

    这篇文章主要介绍了学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等),需要的朋友可以参考下     Ruby 这个就不用多说了 RVM 用于帮你安装Rub ...

  6. Qt WebKit 学习的说明

    (转自:http://it.100xuexi.com/view/otdetail/20120827/4021c662-b917-44d9-8284-910cac713c23.html) QT Webk ...

  7. web聊天相关知识

    http相关知识 http是无状态,请求,响应模式的通信模式,就是用户每次通过浏览器点击一下页面,都需要重新与web服务器建立一下连接,且发送自己的 session id 给服务器端以使服务器端验证此 ...

  8. 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸

    类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...

  9. 移动WEB像素相关知识

    了解移动web像素的知识,主要是为了切图时心中有数.本文主要围绕一个问题:怎样根据设备厂商提供的屏幕尺寸和物理像素得到我们切图需要的逻辑像素?围绕这个问题以iphone5为例讲解涉及到的web像素相关 ...

随机推荐

  1. 详细解读PHP时区修改正确方法

    .修改PHP.ini这个文件 找到date.timezone这行,去掉前面的分号,改成: date.timezone = Asia/Shanghai .修改 .htaccess文件 修改.htacce ...

  2. Fatal Error: TXK Install Service oracle.apps.fnd.txk.config.ProcessStateException: OUI process failed : Exit=255 See log for details

    安装EBS的时候,database pre-install checks检查报警,显示"!" 一开始忽略了该报警,继续安装.在post-install checks的时候又报了错误 ...

  3. Leetcode 171 Excel Sheet Column Number 难度:0

    https://leetcode.com/problems/excel-sheet-column-number/ class Solution { public: int titleToNumber( ...

  4. FastReport使用二——二维码

    以下内容在FastReport Designer 中测试通过,如下图所示: 在使用FastReport Designer创建一维吗也就是一般普通的条码时,设置其Barcode属性为Code128 (建 ...

  5. Render Texture的使用(截取rendertexture的一帧到Texture2D)

    游戏里人物角色太多,每个角色都要有张头像或全身照等,这样就必须截取大量的图片,花费大量的时间,有时截取的不满意还得重新截,即浪费时间又浪费精力.所以就想了个投机取巧的方法.那就是用unity搭建一个照 ...

  6. jQuery扩展extend一

    把这个扩展写在这里,以后要是忘了可以回头查看. (function(j) {// 这里的j是一个形参,表示传入的jQuery对象,j可以任意填写 j.extend({// 相当于给jQuery对象加上 ...

  7. Android 短信模块分析(四) MMS之短信的发送与接收

     MMS之短信的发送与接收分析: 一.信息发送: com.android.mms.data.WorkingMessage.java 类 send()函数: public void send() { . ...

  8. spring-事务实现原理

    spring事务的实现原理:aop. aop的两种实现方式: 1.动态代理: 事务方法与调用方法不能在同一个类中,否则事务不生效.解决方案,自己注入自己(实质注入的是代理类). 实现方式:jdk动态代 ...

  9. 3016: [Usaco2012 Nov]Clumsy Cows

    3016: [Usaco2012 Nov]Clumsy Cows Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 91  Solved: 69[Submi ...

  10. yii 常用一些调用 (增加中)

    调用YII框架中 jquery:Yii::app()->clientScript->registerCoreScript('jquery');        framework/web/j ...