如果要创建支持复杂脚本(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. linux总线、设备和设备驱动的关系

    之一:bus_type 总线是处理器和一个或多个设备之间的通道,在设备模型中,所有的设备都通过总线相连,甚至是内部的虚拟"platform"总线.可以通过ls -l /sys/bu ...

  2. 一个Java对象到底占用多大内存

    在网上搜到了一篇博客讲的非常好,里面提供的这个类也非常实用: import java.lang.instrument.Instrumentation; import java.lang.reflect ...

  3. mysql left( right ) join使用on 与where 筛选的差异

    有这样的一个问题mysql查询使用mysql中left(right)join筛选条件在on与where查询出的数据是否有差异. 可能只看着两个关键字看不出任何的问题.那我们使用实际的例子来说到底有没有 ...

  4. 微信消息处理JAXP-dom解析

    package cn.lihainan.test; import java.io.BufferedReader; import java.io.ByteArrayInputStream; import ...

  5. C++中的运算符优先级

    1   ()  []  .  ->2   !  ~   -(负号) ++  --   &(取变量地址)*   (type)(强制类型)    sizeof 3   * / % 4   + ...

  6. Java中List和ArrayList的区别

    List:是一个有序的集合,可以包含重复的元素.提供了按索引访问的方式.它继承 Collection.List有两个重要的实现类:ArrayList 和 LinkedListArrayList:我们可 ...

  7. Careercup - Facebook面试题 - 23594662

    2014-05-02 03:19 题目链接 原题: Given a sequence of numbers A() ..A(n), find the continuous subsequenceA(i ...

  8. 生鲜电商的O2O之道

  9. 2109&2535: [Noi2010]Plane 航空管制 - BZOJ

    Description世博期间,上海的航空客运量大大超过了平时,随之而来的航空管制也频频发生.最近,小X就因为航空管制,连续两次在机场被延误超过了两小时.对此,小X表示很不满意. 在这次来烟台的路上, ...

  10. 【面试题030】最小的k个数

    [面试题030]最小的k个数 题目:     输入n个整数,找出其中最小的k个数.     例如输入4.5.1.6.2.7.3.8这8个字,则其中最小的4个数字是1.2.3.4.     思路一:   ...