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&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. DesignPattern系列__08UML相关知识

    前言 现在,很少有人和90年代一样,自己去实现一个软件的各个方面,也就是说,在工作中,和人沟通是必备的技能.那么,作为一枚码农,如何和他人沟通呢?这就要依靠本文的主题了--UML. 简介 UML--U ...

  9. Golang(十)TLS 相关知识(一)基本概念原理

    0. 前言 最近参与一个基于 BitTorrent 协议的 Docker 镜像分发加速插件的开发,主要参与补充 https 协议 学习了 TLS 相关知识,下面对之前的学习做一下简单总结 参考文献:T ...

随机推荐

  1. PAC学习框架

    PAC学习框架是机器学习的基础.它主要用来回答以下几个问题: 什么问题是可以高效学习的? 什么问题本质上就难以学习? 需要多少实例才能完成学习? 是否存在一个通用的学习模型? PAC=probably ...

  2. HFSS 边界条件

    Ansoft HFSS求解就是对微分形式的麦克斯韦方程采取有限元方法进行数值求解,在场矢量和导数是都单值.有界而且沿空间连续分布的假设下,这些方程才可以使用.在边界和场 源处,场是不连续的,场的导数变 ...

  3. Java虚拟机详解03----常用JVM配置参数

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. php file_get_contents 绕过

    http://www.shiyanbar.com/ctf/1837 想到了经常出现的残留文件问题,于是尝试了一下:index.php~,index.php.bak, $flag='xxx';extra ...

  5. requirejs学习之路

    2006年,由于微软的名声比SUN公司的名声要大,选择了asp.net,利用VS开发了很多项目,那个时候觉得自己真是很牛气,什么都能做:现在随着互联网和移动互联的冲击,这些传统技术也受到了冲击,由于A ...

  6. POJ 1125 Stockbroker Grapevine

    Stockbroker Grapevine Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 33141   Accepted: ...

  7. Android Animation简述

    Android Animation简述 一.动画(Animation)          Android框架提供了两种动画系统:属性动画(Android3.0)和视图动画.同时使用两种动画是可行的,但 ...

  8. [转]Linux查看物理CPU个数、核数、逻辑CPU个数

    From : http://www.cnblogs.com/emanlee/p/3587571.html # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个 ...

  9. tee命令

    tee命令 http://liubin.blog.51cto.com/282313/131298 https://en.wikipedia.org/wiki/Tee_(command)

  10. C语言 百炼成钢12

    //题目34:对10个数进行排序 #include<stdio.h> #include<stdlib.h> //分析:使用冒泡排序 void main(){ ] = { , , ...