栏目搜索
 
 
 
 
你的位置:首页 > 移动开发 > C++ SDK+Symbian开发入门之运行 >
 

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

发布者:[本站编辑] | 来源:[]

C++ SDK+Symbian开发入门之运行_电脑维修资料库

在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信息。
</t