Symbian MMP file 介绍

2023-10-29 19:38
文章标签 介绍 file symbian mmp

本文主要是介绍Symbian MMP file 介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

TARGET 
该关键字指明了目标文件(exe或dll文件)的名称。 

TARGETTYPE 
该关键字指明了工程所产生的目标文件的类型,在上面的例子中,我们生成了一个可执行文件。在大多数情况下,目标文件的类型为dll,exe或是其他的插件(plugin)。 

UID 
目标(通常指可以执行的.exe或.dll文件)具有三个UID,这些UID用来标识组件,第一个UID是无须指定的。因为它是编译工具根据目标的类型自动分配的。所以这里所指定的实际上是UID2,这个值进一步指明了目标的类型,上面例子中,值(0x100039CE)指明了目标文件是一个应用程序,Symbian系统使用这个值来标识所有的应用程序。下一个指定的UID 对每个应用程序来说都是唯一的。它标识了这个应用程序的注册资源文件和该程序的安装包文件.pkg。所以为了保证这个值的唯一性, 您必须要向Symbian申请这个UID,由他们负责从数据库中为您的应用程序分配一个UID。可到Symbian的网站上了解更多的相关信息。有一些UID的值是用来测试的,例如SDK中的例子:文件系统浏览应用程序(filesystem browser)所使用的UID为0xE80000A6, 您也可以在测试您的应用程序的时候使用这个值,但注意,不要在您的最终产品中使用它。   

SECUREID 
这是个可选的关键了,上面的例子中没有出现。该关键字为应用程序定义了安全标示符,用来指明这个程序可以访问哪个私有的目录。如果该关键字没有使用,用UID3来代替该关键字。 

VENDORID 
该关键字是在Symbian OS v9.1版本新增的。用来指定软件提供商的ID号。该关键字不是必须的,可省略。 

CAPABILITY 
这是 Symbian OS 9.1新增加的关键字。该关键字指明了应用程序的权限(或称作能力,如:查看系统目录)。大上面的例子中,应用程序在模拟器上和在手机上被分配了不同的能力(capability)。在模器上,该程序被赋予了AllFiles 的权限, 比在手机上运行时,能看到更多的私有文件系统的区域。没有被赋予AllFiles 能力的程序不能看到/Sym 目录下的内容。应用程序只有在经过认证(certificate)以后才能获得AllFiles的能力。关于认证和签名的内容,我们在这一章的后面会讲到。 

SOURCEPATH和SOURCE 
SOURCE关键字指明了有哪些源文件和资源文件需要编译,而SOURCEPATH关键字指明了这些文件的位置。这个位置既可以是相对路径(相对于mmp文件),也可以是绝对路径。 

SYSTEMINCLUDE 
这个关键字指定了系统头文件的位置,系统头文件通常用#include<>语句包含。 

USERINCLUDE 
该关键字的作用类似于SYSTEMINCLUDE,它指明了在用户自定义头文件所在的位置。 

START RESOURCE…END 
START RESOURCE 关键字表明了一个信息块的开始,这些信息指明了如何编译资源文件。END 标示该信息块结束。 

TARGETPATH 
该关键字用来指定被编译后的资源文件的位置。注意: 由于安全方面的考虑,所有的可执行代码(exe或dll)都从手机上的/sys/bin/ 目录运行。可执行代码不需要用该关键字指定位置。TARGETPATH 关键字仅仅用来指定编译后的资源文件的位置。 

HEADER 
这是一个可选的关键字,当它被使用的时候,系统将会在/epoc32/include/路径下创建资源头文件(.rsg)。这个头文件包含了允许以C++代码引用特定资源的标识符。 

LIBRARY 
这个关键字列出了应用程序需要链接的库文件。 

STATICLIBRARY 
该关键字用来指定需要被静态链接的库文件 (库文件中的代码会被链接到您的程序中,而不是需要时才装载到内存)。 

START BITMAP…END 
这一节包含了应用程序图标所使用的位图(bitmap),以及如何将这些位图编译成.mbm(Symbian系统专有的图像格式)的方式。 

EPOCSTACKSIZE 
该关键字是可选的,我们上面的例子中并未用到。在以前的Symbian OS 版本中,缺省的栈大小为0X5000字节。在v9.1版本中,缺省值为0x2000。为了增加栈的大小,可以使用该关键字。例如:EPOCSTACKSIZE 0x5000 。要注意的是, 对栈设置仅仅对真实设备有效,但对模拟器无效。 

EPOCHEAPSIZE 
该关键字也是可选的,我们上面的例子中并未用到。这个关键字指定了应用程序可以使用的最大、最小堆空间。缺省情况下,4K为最小的尺寸,1M为最大的尺寸。 

这篇关于Symbian MMP file 介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/302898

相关文章

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

MySQL中慢SQL优化的不同方式介绍

《MySQL中慢SQL优化的不同方式介绍》慢SQL的优化,主要从两个方面考虑,SQL语句本身的优化,以及数据库设计的优化,下面小编就来给大家介绍一下有哪些方式可以优化慢SQL吧... 目录避免不必要的列分页优化索引优化JOIN 的优化排序优化UNION 优化慢 SQL 的优化,主要从两个方面考虑,SQL 语

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

Python实现html转png的完美方案介绍

《Python实现html转png的完美方案介绍》这篇文章主要为大家详细介绍了如何使用Python实现html转png功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 1.增强稳定性与错误处理建议使用三层异常捕获结构:try: with sync_playwright(

Java使用多线程处理未知任务数的方案介绍

《Java使用多线程处理未知任务数的方案介绍》这篇文章主要为大家详细介绍了Java如何使用多线程实现处理未知任务数,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 知道任务个数,你可以定义好线程数规则,生成线程数去跑代码说明:1.虚拟线程池:使用 Executors.newVir

Java实现将byte[]转换为File对象

《Java实现将byte[]转换为File对象》这篇文章将通过一个简单的例子为大家演示Java如何实现byte[]转换为File对象,并将其上传到外部服务器,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言1. 问题背景2. 环境准备3. 实现步骤3.1 从 URL 获取图片字节数据3.2 将字节数组

JAVA SE包装类和泛型详细介绍及说明方法

《JAVASE包装类和泛型详细介绍及说明方法》:本文主要介绍JAVASE包装类和泛型的相关资料,包括基本数据类型与包装类的对应关系,以及装箱和拆箱的概念,并重点讲解了自动装箱和自动拆箱的机制,文... 目录1. 包装类1.1 基本数据类型和对应的包装类1.2 装箱和拆箱1.3 自动装箱和自动拆箱2. 泛型2

解决JavaWeb-file.isDirectory()遇到的坑问题

《解决JavaWeb-file.isDirectory()遇到的坑问题》JavaWeb开发中,使用`file.isDirectory()`判断路径是否为文件夹时,需要特别注意:该方法只能判断已存在的文... 目录Jahttp://www.chinasem.cnvaWeb-file.isDirectory()遇

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb