EAWebKit的WincePort

关于EAWebKit的相关信息,是从(http://blog.csdn.net/achellies/article/details/6550050)这个网址了解到的,在此文中讲到利用一个开源的界面库DuiLib和duibrowser做为EAWebit的graphic和backend,由于原文没有讲到如何移植到Wince,本着偶一贯的作风:自己动手丰衣足食,开始移植工作。

移植工作分为三个部分,按先后是DuiLib、EAWebKit、duibrowser,分别说明如下:

一、DuiLib
此工程目前在googlecode上可下载,duibrowser是基于r205进行的。由于本人曾经研究过DuiLib,也做过移植工作,因此轻车熟路很快就移植好了,主要是涉及到Wince没有的系统消息以及GDI函数,另外就是不支持richedit和activex。

二、EAWebKit
这个是工作量最大的,涉及到Wince没有的CRT函数、文件及目录操作函数的增加,另外一个重要的修改就是max和min这两个宏定义的使用:原代码使用的是std::max和std::min,这个在Wince下也是没有的。

三、duibrowser
这个主要是把引用到DuiLib和EAWebKit的头文件,如果在上两步有修改需要同步过来;另外就是增加Wince没有的函数等一些小修改了。

经过这三步移植后,在Wince6的800*480模拟器上运行一直有0xC0000005的异常错误出现,经过分析原来是资源文件main.xml使用的分辨率是800*600,而应用分配的缓存是按屏幕分辨率的,造成webview生成的数据拷贝到应用缓存的时候溢出。修改main.xml或模拟器分辨率让两者保持一致即可。经过调整终于可以运行了。

针对每一步的代码修改生成了一个patch文件(http://download.csdn.net/detail/alien75/6475541),工程文件设置修改可以参考duibrowser中的文档“WinCE Porting Guide.txt”。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值