mmp 文件中的每个语句都以一个关键字开头。下面是一个典型的mmp 文件的例子。
// filebrowseapp.mmp
TARGET filebrowseapp.exe
TARGETTYPE exe
UID 0x100039CE 0xE80000A6
VENDORID 0
#ifdef __WINSCW__
CAPABILITY AllFiles // AllFiles on emulator since no signing is required
#else
CAPABILITY NONE // No capabilities on hardware - otherwise SIS file signing is required
#endif
SOURCEPATH ../src
SOURCE FileBrowseAppUi.cpp
SOURCE FileBrowseDocument.cpp
SOURCE FileBrowseApplication.cpp
SOURCE FileBrowseBaseView.cpp
SOURCE RFsEngine.cpp
SYSTEMINCLUDE /epoc32/include
USERINCLUDE ../inc
SOURCEPATH ../data
START RESOURCE filebrowseapp.rss
TARGETPATH /resource/apps
HEADER
END
START RESOURCE filebrowseapp_reg.rss
TARGETPATH /private/10003A3F/apps
END
START RESOURCE filebrowseapp_loc.rss
TARGETPATH /resource/apps
LANG SC
HEADER
END
START BITMAP filebrowseapp.mbm
TARGETPATH /resource/apps
HEADER
SOURCEPATH ../gfx
SOURCE C16 folder.bmp
SOURCE C16 file.bmp
SOURCE 8 mask.bmp
END
LIBRARY euser.lib efsrv.lib cone.lib eikcore.lib eikcoctl.lib eikdlg.lib egul.lib eikctl.lib apparc.lib
LIBRARY bafl.lib
LIBRARY avkon.lib CommonEngine.lib
下面简单地描述每个关键字的作用:
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解释,有助于了解整个工程结构
Symbian编程工程配置文件bld.inf、.mmp和.pkg文件结构浅析
用project做项目计划的案例,可以参考学习实用
mmp junit mmp junit mmp junit mmp junit mmp junit mmp junit
mmp项目阅读器 mmp项目阅读器mmp项目阅读器mmp项目阅读器mmp项目阅读器
MMP自动推理平台软件 数学机械化
MMP算法提出的文献: Multipath Matching Pursuit----IEEE TRANSACTIONS ON INFORMATION THEORY 文章的作者也是gOMP算法的作者,现在在复旦大学任教 主要贡献:文章将传统贪婪算法的原子选择问题建模为组合树的...
基于分子描述符和机器学习方法预测和虚拟筛选MMP-13对MMP-1的选择性抑制剂.pdf
Private_MMP_SDK_5.0.3.0 基于私有云的个推Java SDK及示例代码
MMP9与SAP小肠毛细血管渗漏,陆逢春,王锋,目的 观察重症急性胰腺炎大鼠小肠毛细血管渗漏与MMP9改变的关系,探索重症急性胰腺炎毛细血管渗漏的可能机制。方法 建立大鼠SAP模�
对于需要定制内存池的朋友,本文档应该是一份不错的资料。本文介绍了几种常用的内存管理优化方案,并提吃定制内存池得一些建议。最后,根据一个实际项目的特点,定制了一个内存池(MMP内存池)并实现该内存池。
多路径匹配追踪 广度优先(MMP_BF),该方式搜索最优原子支撑集的方式和OMP类有些许不同,程序中采用结构体来保存每个节点的各项信息,对理解MMP_BF有很大帮助
[value]添加需要提pr的分支mmp add branch -b添加需要提pr的文件路径mmp add path -f删除主分支mmp del branch删除需要提pr的分支mmp del branch -b删除需要提pr的文件路径mmp del path -f.mmprc.json为了与成员...
用MMP计算器计算MMP! mmp-calc是一个免费的开源应用程序,用于计算使用混合成员比例(MMP)表示形式(在英国也称为“其他成员系统”)进行的选举结果。 mmp-calc允许用户输入在单成员选区中获胜的席位数量,然后...
这是1987年提出的著名的计算三维网格测地线的MMP算法,论文中作者详细阐述了MMP算法的过程,对离散三维网格的计算的发展产生了重大影响!
用户体验 要素 mmp用户体验 要素 mmp用户体验 要素 mmp用户体验 要素 mmp
重组MMP-2对人肾系膜细胞Fractalkine基因表达和分泌的影响,刘强,王尧,目的:观察重组基质金属蛋白酶-2 ( MMP-2 )对人肾系膜细胞 ( human renal mesangial cell,HRMC) 趋化因子Fractalkine(Fkn)表达的影响。...
mpp文件。作为Microsoft Project的合作伙伴,提供给你Project完美的补充。 安装步骤: 1、解压文件Steelray Project Viewer.zip; 2、安装包为在Steelray Project Viewer.zip\setup下的spv_4_4_2_0_jre.msi; 3、...
乌头汤对膝骨关节炎大鼠细胞因子IL-1β、IL-6、TNF-α、MMP-3的影响,陈俊,叶锦霞,目的:观察乌头汤对膝骨关节炎SD大鼠模型关节液和血清中IL-1β、IL-6、TNF-α、MMP-3的影响,探讨其治疗膝骨关节炎的作用机制。...
mmp-java 开源Java项目mmp-java项目提供以下开放源Java库: mmp-application-包含用于开发Spring Boot应用程序的Java类和资源。 mmp-application- cache-包含Java类和资源,这些类和资源提供基于Hazelcast的分布式...