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. OpenStack虚拟机状态

    OpenStack创建一个虚拟机,涉及到三种状态,vm_state,task_state和power_state. 先总结几点: 电源状态(power_state):是hypervisor的状态,从计 ...

  2. 【ASP.NET 进阶】根据IP地址返回对应位置信息

    其实就是使用了百度的IP库的功能接口,然后处理下就行了,效果图如下: 准备工作: 1.注册成为开度开发者,创建应用获得百度API调用的AK秘钥,百度开发中心地址:http://developer.ba ...

  3. codevs 2822 爱在心中

    codevs 2822 爱在心中  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题目描述 Description “每个人都拥有一个梦,即使彼此不相同, ...

  4. codeforces 616E Sum of Remainders (数论,找规律)

    E. Sum of Remainders time limit per test 2 seconds memory limit per test 256 megabytes input standar ...

  5. Android系列之网络(二)----HTTP请求头与响应头

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

  6. NGUI图片字(Bitmap图片转文字)

    用图片字而不是图片 美术和程序的配合,需要程序能够很快抓住问题重点并提出解决方案.美术出的图片字比我们使用的字体更好好看,那么是否要一个个图片去拼成数字呢? NGUI创建图片字 准备材料 美术提供的数 ...

  7. java 13-3 int类型的包装包Integer

    1.Integer的概述 需求1:把100这个数据的二进制,八进制,十六进制计算出来 需求2:判断一个数据是否是int范围内的.  首先你得知道int的范围是多大? 为了对基本数据类型进行更多的操作, ...

  8. 24Mybatis_延迟加载——用association来实现

    resultMap可以实现高级映射(使用association.collection实现一对一及一对多映射),association.collection具备延迟加载功能. 需求: 如果查询订单并且关 ...

  9. 【C#】IDispose接口的应用

    .net的GC机制有两个问题: 一.GC并不能释放所有资源,它更不能释放非托管资源. 二.GC也不是实时的,所有GC存在不确定性.所以需要使用析构函数,但是为了不重复GC,需要做一些处理. publi ...

  10. U3D Debug.log的问题

    今天在测试有yield有关的问题时,发现Debug.log()是异步输出机制.不一定会在调用后立即执行. 在C++有类似问题:std::cout 也不一定会立即输出,加上"\n"或 ...