symbian资源的自定义和解析
2010-10-20 08:00:08 来源:WEB开发网在系统的CCoeEnv里面有个AllocReadResourceAsDes16LC这个函数可以把资源文件读取到数组里,做的上一个项目里面有很多字符串常量数组,我就想可不可以自己定义资源,然后读取呢,网上找个破资料还真不好找,今天有点空闲时间,测试了一下,可以实现自定义并读取,记录一下。
先写一下资源定义的数据类型
字段类型 说明
BYTE 单字节,解释为一个有符号或无符 号整数
WORD 双字节,解释为一个有符号或无符 号整数
LONG 四字节,解释为一个有符号或无符 号整数
DOUBLE 八字节,表示一个双精度浮点数
TEXT 以NULL 结尾的字符串,已废弃,建议使用LTEXT
LTEXT Unicode 字符串,带有一个前导字节保存长度,没有终止NULL
BUF Unicode 字符串,没有前导字节,没有终止NULL
BUF8 8 位字符组成的字符串,没前导和终止,用于放入8 位数据
BUF 最大长度为n 的Unicode 字 符串,没有前导和终止
LINK 另一个资源的16 位ID , 类似于拥有指定资源的一个引用
LLINK 另一个资源的32 位ID
SRLINK 自引用LINK ,该类型字段值由资源编译器自动分配,不能自行提供初始化值, 是一个32 位ID
STRUCT 结构,创建本身就是STRUCT 的字段,使用它可以把STRUCT 嵌入到STRUCT 中
用这些类型定义自己的自定义资源。
可以自己去系统的rh文件里面看看,操作系统定义的一些资源,分析分析
下面是我在rss里写的资源
STRUCT DATA
{
WORD wrd;
LONG lng;
LTEXT ltxt;// variable length
BYTE byt;
DOUBLE dbl;
}
STRUCT DATAARRAY
{
STRUCT dataelement[];
}
STRUCT MYCUSTOM
{
WORD wrd;
LONG lng;
LLINK datas;
}
//
//-----
RESOURCE DATAARRAY r_data_array
{
dataelement =
{
DATA
{
wrd = 11;
lng = 22;
ltxt = "data1";
byt = 1;
dbl = 2.11;
更多精彩
赞助商链接