分享
 
 
 

Symbian游戏编程入门 三. 应用程序开发简介

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

三. 应用程序开发简介

3.1 Symbian应用程序类型介绍

Symbian OS 中编译的二进制代码由三种目标类型,EXE、APP和DLL。

3.2 EXE程序的开发

当我们的应用程序并不需要用户界面,只需要使用一个单独进程的时候,我们可以创建.EXE 程序。.EXE程序包含一个主入口E32main(),当系统通过E32main()启动的时候,系统会创建新的进程,并在此进程中创建新的线程。在创建EXE 程序时,我们需要在.mmp文件中将程序的TARGET指定为 EXE 。EXE通常是服务端或命令行程序,通常隐蔽的运行,他没有GUI,不能直接从主菜单运行。

下面是一个最基本的控制台应用程序的MMP文件:

target Console.exe

targettype EXE

UID 0x100039CE 0x10005B91

TARGETPATH \system\apps\Console

sourcepath ..\src

userinclude ..\in

systeminclude \EPOC32\INCLUDE

systeminclude \EPOC32\INCLUDE\LIBC

source e32main.cpp Console.cpp

library euser.lib

我们编译程序后,会生成Console.exe。将程序打包安装后,我们无法直接运行此程序。运行此程序可以有两种方法,第一是通过其他程序的调用来运行,第二是使用SeleQ 一类的文件浏览器选择此程序然后运行。

在这里我们实现了一个console类用来显示上边的文字。我们在设计一个后台程序时候也可以不实现console类,这样程序运行时候在屏幕上将不会有任何显示。

3.3 APP程序的开发

当我们创建的应用程序需要使用用户界面的时候,我们需要创建APP程序。一个APP程序可能包括自定义的字符串、菜单项、对话框等。如果我们要创建一个APP程序,我们需要在.mmp文件中将程序的TARGET指定为 APP 。

我们最熟悉的Helloworld 就是一个简单的APP 程序,下面是它的mmp 文件:

TARGET HelloWorldBasic.app

TARGETTYPE app

UID 0x100039CE 0x10005B91

TARGETPATH \system\apps\helloworldbasic

SOURCEPATH ..\src

SOURCE HelloWorldBasic.cpp

SOURCE HelloWorldBasicApplication.cpp

SOURCE HelloWorldBasicAppView.cpp

SOURCE HelloWorldBasicAppUi.cpp

SOURCE HelloWorldBasicDocument.cpp

SOURCEPATH ..\group

RESOURCE HelloWorldBasic.rss

USERINCLUDE ..\inc

SYSTEMINCLUDE \epoc32\include

LIBRARY euser.lib

LIBRARY apparc.lib

LIBRARY cone.lib

LIBRARY eikcore.lib

LIBRARY avkon.lib

编译后我们会得到HelloWorldBasic.app,打包安装后我们可以直接选择运行此程序会看到如下图。

3.4 DLL程序的开发

DLL提供多个入口,由系统或是已存在的线程(进程)调用。

有两种类型的DLL, 静态DLL和多态DLL。

静态DLL为其他程序提供方法列表以供调用。当程序启动的链接阶段静态DLL就被读到内存中。

多态DLL为其他程序提供某个固定的方法调用。例如某个GUI应用提供了NewApplication()方法调用以启动应用程序。这些DLL实现抽象的方法,如一个打印机驱动,socket协议或是一个应用程序。它们的扩展名多不是.DLL,而是PRN、PRT 或APP等。它们从与DLL相关的类继承,并通常只有在程序需要它们时才读入。前面的APP程序也算作一个多态DLL。

如果我们要创建的是DLL程序,我们需要在.mmp文件中将程序的TARGET指定为 DLL。如下所示:

TARGET test.dll

TARGETTYPE dll

UID 0x1000008D 0x0CD52435

SOURCEPATH ..\src

SOURCE test.cpp

USERINCLUDE ..\inc

SYSTEMINCLUDE \epoc32\include

LIBRARY euser.lib

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有