分享
 
 
 

Symbian和C++ SDK开发入门之运行

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

在Series 60 SDk中可以使用两个版本的模拟器可执行文件:一个版本包含符号调试信息,另一个是发布版本。发布版模拟器限制为只能评估或演示应用程序--它启动得很快,因为它不带有调试信息。

两个版本都叫做epoc.exe,但是它们位于自己的子目录中。Epoc这个名字是历史遗留的--它是Symbian OS以前的操作系统的名称。

在正常的开发活动中,经常使用模拟器的调试形式。根据你选择的IDE,你可以正常地使用调试版本或在"调试模式"中使用调试版本。能够在两种模式下运行同一个"调试模拟器"起初看起来有点混乱。

有时候你可能希望启动模拟器,定位应用程序并运行它,而这仅仅是为了测试的目的。如果出现了严重的错误,模拟器和应用程序将以受到约束的方式关闭。

还有些时候你可能希望在自己认为存在问题的特殊地方(代码中)设置断点(breakpoint),接着让IDE在"调试模式"下运行模拟器。接着你定位应用程序并运行它。与应用程序适当地交互操作将会遇到代码中的断点。在断点上,源代码将显示在IDE中,并且同时显示与应用程序相关的所有符号调试信息。接着你可以在受控制的情形下,使用IDE的调试特性一步一步地调试代码片断。你可以查看IDE显示的应用程序源代码、数据、调用堆栈和其它与调试相关的信息,帮助自己跟踪到代码或逻辑中的错误。

图1-3. Series 60平台1.2调试模拟器的应用程序表格和列表视图

图1-4.微软Visual C++ IDE下处于调试模式的HelloWorld应用程序

模拟器可执行文件位置

Series 60 1.2 SDK发布版模拟器典型情况下位于下面的位置:

对于Visual C++

\Symbian\6.1\Series60\Epoc32\Release\wins\urel\epoc.exe

对于Borland C++

\Symbian\6.1\Series60\Epoc32\Release\winsb\urel\epoc.exe

对于CodeWarrior

\Symbian\6.1\Series60\Epoc32\Release\winscw\urel\epoc.exe

调试版模拟器典型情况下位于:

对于Visual C++

\Symbian\6.1\Series60\Epoc32\Release\wins\udeb\epoc.exe

对于Borland C++

\Symbian\6.1\Series60\Epoc32\Release\winsb\udeb\epoc.exe

对于CodeWarrior

\Symbian\6.1\Series60\Epoc32\Release\winscw\udeb\epoc.exe

精确的路径依赖于你在安装SDK的时候选择的选项。在Series 60 2.x SDK中模拟器的路径将非常类似--例如\Symbian\Series602_0\Epoc32\release\wins\udeb\epoc.exe。

图1-3显示了Series 60 1.2模拟器。它启动时显示应用程序主菜单为表格视图或列表视图。

Series 60 2.0模拟器启动的外形类似电话应用程序,你必须通过按下图1-3所示的应用程序按钮导航到应用程序菜单。无论使用哪种版本的Series 60平台,一般把模拟器可执行文件的调试(udeb)版本作为开发项目的默认选项--例如\Epoc32\Release\wins\udeb\epoc.exe。

模拟器调试模式

在模拟器的调试模式下运行应用程序的时候,源代码、函数调用堆栈、变量信息等在遇到代码断点的时候会立即显示出来,如图1-4所示。如果应用程序代码没有处在需要用户输入的位置,模拟器窗口本身可能消失了(它被最小化了)。

从命令提示符运行模拟器

如果需要从命令行运行调试模拟器,只需要打开命令提示符,把当前路径改变到epoc.exe应用程序所在的Series 60 SDK文件夹(例如\Symbian\6.1\Series60\Epoc32\Release\wins\udeb)并输入下面的内容:

epoc

上面的命令将启动调试模拟器,接着你可以定位并运行自己的应用程序了,但是它并非处于调试模式之中。要使被调试的应用程序运行在模拟器的调试模式之下只能从IDE内部完成。如果要运行发布版模拟器,需要输入:

epoc -rel

在Visual C++ IDE中运行模拟器

在Visual C++ IDE中你按下Ctrl+F5或从菜单中选择Build|Execute Epoc.exe就可以启动模拟器的调试版本。这样将使模拟器处于非调试模式。作为代替,按下F5或从菜单中选择Build|Start Debug|Go将使模拟器处于调试模式。

当你第一次运行某个Visual C++项目的模拟器的时候,会出现一个对话框向你询问可执行文件的名称。请导航到SDK的根目录的\Epoc32\Release\wins\udeb文件夹的epoc.exe文件。

在Borland C++Builder 6和C++BuilderX IDE中运行模拟器

你可以使用Tools|Mobile Build Tools菜单选项,选择Run Emulator来启动模拟器的调试版本。或者使用Run|Run菜单选项(F9),但是它会引起项目每次都重新建立--而这花费的时间可能很长。使用这个选项的时候,你可能需要在模拟器启动之前终止建立对话框("Compiling")。

如果你在C++BuilderX中运行模拟器,使用Run|Debug Project菜单选项或按下Shift+F9。如果你希望重新建立项目并启动模拟器,选择Run|Run Project或按下F9。

在CodeWarrior IDE中运行模拟器

选择Project|Run菜单选项或按下Ctrl+F5运行模拟器。按下F5或使用Project|Debug菜单选项使模拟器运行在调试模式。

定位和运行应用程序

通过点击模拟器的招牌位图上的光标键的图片,或者使用PC键盘光标(箭头)键导航并选择HelloWorld应用程序。点击"Selection"按钮(在光标控制键的中间)启动应用程序。

注意

没有特定图标的应用程序(在.aif文件中指定)将会被赋予一个默认的图标,它看起来像一片锯齿状拼盘。

在某些SDK/IDE(例如Borland和CodeWarrior的一些版本)中,你建立的应用程序可能位于"Other"文件夹下,而不在主桌面上。如果出现这种情况,请导航并选择Other文件夹,接着通过点击"Selection"按钮打开它。导航并选择HelloWorld应用程序并点击"Selection"按钮调用该应用程序。

图1-5."HelloWorld"应用程序

调试应用程序

作为代替,你可以在IDE中使模拟器上运行的应用程序处于调试模式--这个过程验证依赖于使用的IDE。典型情况下,你需要首先在源代码的适当位置设置断点。

启动处于调试模式的模拟器。由于要调试的是应用程序(本质上是动态链接库DLL),而不是模拟器本身,你需要导航并运行应用程序。该应用程序将会启动,碰到你设置的断点的时候执行会停止。接着你可以使用自己选择的IDE工具逐步执行应用程序的源代码。

更多的IDE帮助

本文没有不同IDE功能的更多介绍,因此如果你要查询更多的IDE帮助信息,可以通过Help菜单选项进行。

对于微软Visual C++,你可以选择Help|Contents菜单选项,它在与IDE一起安装的MSDN中提供。

对于Borland C++Builder 6,你可以使用Help菜单选项。你会发现除了标准的Borland帮助文件之外还有一个独立的Help|Borland C++ Mobile Edition Help页面。对于C++BuilderX,你可以选择Help|Help Topics,然后选择Mobile Development。

对于Metrowerks CodeWarrior,有一个Help|Online Manuals菜单选项,它包含了使用Symbian OS时大量的有价值的信息。

还有更多的特定IDE信息可以在线获得--例如到http://msdn.microsoft.com/链接查找Visual C++信息,到http://bdn.borland.com/链接查找Borland C++信息,到http://www.metro-werks.com/MW/Develop/Wireless/链接查找CodeWarrior信息。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
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- 王朝網路 版權所有