如果要创建支持复杂脚本(Complex Scripts)的系统,我们需要完成下面一系列步骤来确保系统包含所有需要支持的具体区域设置 (locale–specific)。

1.     选择international下面的Unicode Processor for Complex Scripts组件

图1

此组件对应系统环境变量SYSGEN_UNISCRIBE。

2.     增加具体locale

从PB目录中,添加对具体locale的支持到系统中,比如,我们要在系统中包含Arabic,在PB中International\Locale Specific Support找到Arabic文件,并选择合适的字体和键盘,如图1所示。

3.     工程下面Property Pages中选择具体的locale

图2

在list目录下,为我们的系统选择适当的locale,选中的目标locale包含所需要的NLS(National Language Support,国际化语言支持)和相关的ANSI(美国国家标准协会)和此locale对应的默认OEM code page(字符集和字符编码方案,Codepage就是各国的文字编码和Unicode之间的映射表)

在图2中的Default locale选择默认的locale,并清空

4.     创建具体locale所需要的common.str

打开:\WINCE600\PUBLIC\COMMON\OAK\FILES\INTLTRNS文件夹,创建一个文件夹并用LCID(locale identifier)来命名,此LCID将作为系统默认的LCID。比如,我们如果要创建默认LCID为Arabic (Saudi Arabia,沙特阿拉伯)的系统,以0401命名此文件夹。

从INTLTRNS\0409(对应英文)复制common.str到0401文件夹下面,并打开此文件修改下面的定义:

#define LOC_LCID    ~"<default LCID>"

#define LOC_ACP    ~"<default code page>"

#define LOC_HKL_DEFAULT    ~"<default HKL value>"

对于沙特阿拉伯,上面的定义对应的值如下:

#define LOC_LCID     ~"401"

#define LOC_ACP      ~"4e8"//1256,ARA

#defineLOC_HKL_DEFAULT     "00000401"

图3

需要注意的是LCID和默认的code page都必须是十六进制,下面的表列出了复杂脚本locale的HKL。

图4

5.     选择Sysgen编译并运行

选择Sysgen编译并更新之后WINCE的界面如下:

图5

My device的显示也是由右到左,如下图:

图6

但为什么显示的还是英文呢?像Arabic这样的PB就没有直接提供res文件。当然这些res文件可以自己做(无非就是建立对话框,添加按钮,编辑框之类的),不过前提是你要懂得相关的语言。如果你要是在pb->setting->local中选择arabic相关语言的话,在你编译后的nk运行后,一直都english的。因为,在makeimage的时候,如果没有找到相关语言的res文件的话,就用默认的0x0409来代替。

WINCE6.0中特别提到WordPad、Inbox、Windows Messenger和File Viewers不支持复杂脚本。

图7

创建支持复杂脚本Complex Scripts的WINCE6.0系统的更多相关文章

  1. WIN7 64位系统搭建WINCE6.0系统遇到的问题

    WIN7 64位系统搭建WINCE6.0系统遇到的问题 安装顺序如下: .先装Visual Studio2005: .安装Visual Studio2005 Service Pack 1: .安装Vi ...

  2. <03>labview在winCE6.0系统下的程序移植与界面开发

    任务布置:labview与winCE开发<3> 要求一:学会TouchPane的环境配置,建立调试通道:要求二:掌握触控屏幕界面优化: 正文: 今天介绍labview虚拟仪器软件中 Tou ...

  3. BlazeMeter发布chrome扩展插件,支持JMeter脚本创建

    BlazeMeter发布chrome扩展插件,支持JMeter脚本创建http://www.automationqa.com/forum.php?mod=viewthread&tid=3898 ...

  4. 安装好php后,配置httpd以便支持php3脚本

    Apache是目前应用最广的Web服务器,PHP是一种类似ASP的易学的脚本语言,而且性能和功能都比ASP要强,而MySQL又是一个Linux上应用最多的数据库系统,特别是用于网站建设,这3个软件均是 ...

  5. 基于catalog 创建RMAN存储脚本

    --============================== -- 基于catalog 创建RMAN存储脚本 --============================== 简言之,将rman的 ...

  6. SpiderMonkey-让你的C++程序支持JavaScript脚本

    译序 有些网友对为什么D2JSP能执行JavaScript脚本程序感到奇怪,因此我翻译了这篇文章,原文在这里.这篇教程手把手教你怎样利用SpiderMonkey创建一个能执行JavaScript脚本的 ...

  7. 【ASP.NET Web API教程】2.1 创建支持CRUD操作的Web API

    原文 [ASP.NET Web API教程]2.1 创建支持CRUD操作的Web API 2.1 Creating a Web API that Supports CRUD Operations2.1 ...

  8. 20181225-Linux Shell Bash环境下自动化创建ssh互信脚本

    20181225-Linux Shell Bash环境下自动化创建ssh互信脚本 1. 我的Blog 博客园 https://www.cnblogs.com/piggybaba/ 个人网站 http: ...

  9. 利用docker创建支持centos的ssh镜像

    创建docker镜像需要基础镜像,目前官方已提供了多种基础镜像,参见: https://hub.docker.com/explore/ 要想创建支持centos的ssh镜像,就需要以centos镜像为 ...

随机推荐

  1. iOS下日期的处理(世界标准时转本地时间)

    NSDate存储的是世界标准时(UTC),输出时需要根据时区转换为本地时间 Dates         NSDate类提供了创建date,比较date以及计算两个date之间间隔的功能.Date对象是 ...

  2. 从零开始学ios开发(二十):Application Settings and User Defaults(下)

    在上一篇的学习中,我们知道了如何为一个App添加它的Settings设置项,在Settings设置项中我们可以添加哪些类型的控件,这些控件都是通过一个plist来进行管理的,我们只需对plist进行修 ...

  3. c++数组-矩阵的转置

    #include <iostream> using namespace std; int main(){ ][]={{,,},{,,}}; ][]; ;j<;j++){ ;i< ...

  4. xcode 编译错误的 之 头文件 包含成.m了

    duplicate symbol _OBJC_CLASS_$_AutoTableViewViewController in: /Users/apple/Library/Developer/Xcode/ ...

  5. linux驱动之I2C

    include/linux/i2c.h struct i2c_msg;struct i2c_algorithm;struct i2c_adapter;struct i2c_client;struct ...

  6. asp.net中json格式化及在js中解析json

    类: public class UploadDocumentItem { public UploadDocumentItem() { } public string DocMuid { get; se ...

  7. Text selection in div(contenteditable) when double click

    背景: 在最近项目中,碰到一个问题:有一个可编辑的div需要双击时可编辑,blur或者回车时将编辑结果保存.你可能注意到双击时,文字会被选中,可编辑区域不会focus到光标位置.考虑到兼容性问题,写了 ...

  8. ASP.Net MVC4 登录

    一月之前,工作室师兄给我们介绍博客,然后试着去申请了一个,一直不晓得更新什么,直到今天,才有了一点小想法.最近在做一个小网站,然后就在登录那一块犯愁了,止步不前. 以前对登录一直没有什么概念,以为登录 ...

  9. c# 取 list前100条数据

    [问] List<KeyWord> sortedList = (from a in keyWordList orderby a.Total descending select a).ToL ...

  10. Window 2008 R2 + IIS7.5 + VS2013 错误代码 0x80070002

    HTTP 错误 404.0 - Not Found 您要找的资源已被删除.已更名或暂时不可用.详细错误信息模块 IIS Web Core通知 MapRequest Handler处理程序 Static ...