Windows Mobile 开发常见问题集

Windows Mobile 开发常见问题集(一)

1、Q:新建项目的时候选择哪个项目类型才能创建智能设备的应用程序?

  A:在Visual Studio的新建项目对话框中选择Visual C#或者Visual Basic项目类型,选择智能设备模板,然后再选择相应的设备SDK,最后选择“Device Application”,就可以创建一个移动设备的应用程序了。

2、Q:托管代码与本地代码有哪些区别?

  A:托管代码是指使用.NET Compact Framework开发的程序代码,可执行文件被编译成IL,执行时需要有.NET的运行时环境。而本地代码指用C++等语言开发的程序代码,可执行文件被编译成与CPU指令集有关的机器码,可以直接运行。

3、Q:能不能简要介绍一下Magneto里面对OTA和MMS的支持?

  A:Magneto对OTA有很好的支持,SDK文档的通讯部分中,有针对OTA的专门介绍。MMS的应用程序基本都是由第三方开发的,因为MMS是基于WAP协议的,而Magneto本身对WAP的支持也很好,具体的协议也可以在SDK文档里找到。

4、Q:请问用Visual Basic .NET开发PDA数据库程序能不能使用ADO.NET?

  A:Visual Basic .NET开发PDA数据库不需要引用System.data.oledb,只需要引用System.Data.SqlServerCe命名空间就可以了。该命名空间中的数据库操作类和ADO.NET是基本一致的。可以用它们来开发针对SQL Server CE的应用程序。

5、Q:在Visual C++2005中,可以使用.Net Compact Framework吗?

  A:不能,现在.NET Compact Framework只支持C#和VB.NET,而不支持C++/CLI。但是在VS.NET 2005中可以用C++来开发Native代码来支持移动设备。

6、Q:从什么地方可以得到Smartphone开发环境?

  A:Smartphone的SDK可以在微软网站上找到,而Visual Studio 2005 Beta 2可以通过参加微软活动的方式获得。MEDC 2005的参加者都获得了VS.NET 2005和Windows Mobile 5 SDK的开发光盘。

7、Q:托管性的代码执行效率怎么样?和使用Visual C++编写的代码相比较。

  A:托管代码的执行效率肯定不如本地代码高,但是托管代码也有一些好处是无法取代的。

8、Q:是否可以使用Visual Studio .NET 2003来开发能够运行在Windows Mobile 2005上的应用程序?

  A:首先更正一下,Windows Mobile最新一代的操作系统叫做Windows Mobile 5,而不是Windows Mobile 2005。是的,使用VS.NET 2003开发的应用程序是可以在Windows Mobile 5上正常运行的,因为Windows Mobile 5 ROM中内置了.NET Compact Framewrok 1.0 SP3。

9、Q:PDA上不能用Pocket Access么?SQL CE太大了。

  A:可以使用Pocket Access来开发Windows Mobile上的应用程序。可以采用C++调用OLEDB或者ADOCE的方式来访问Pocket Access数据库。

10、Q:Visual Studio 2005的新功能是否只在Windows Mobile 5里受到支持,2003是否支持?

  A:新功能分两个部分,一部分是.NET Compact Framework 2.0中提供的的新功能,这部分的功能可以被Windows Mobile 2003支持,但必须安装.NET Compact Framework 2.0;而另一部分是Windows Mobile 5的特有功能。.NET Compact Framework 2.0和Windows Mobile 5开发文档的“What’s New”部分,分别描述了这两方面的新特性。

11、Q:请问如何在模拟器里面配置连接到移动网络?

  A:模拟器如果需要连接移动网络的话,必须有专门的硬件提供支持。可以在开发PC的串口上连一个GPRS的模拟器,SDK文档中对此有专门的说明。

12、Q:SQL CE可以像Pocket Access那样仅使用一个文件就能运行么?是否需要像PC上那样安个服务器才能使用?

  A:不会的,只需要在Windows Mobile上安装SQL Server CE的支持库,也就是就是一些DLL文件。而SQL Server CE的库文件是一个单独的文件,不需要安装一个服务器。

13、Q:开发好的程序通过什么方式部署到手机上?对手机有什么要求?

  A:开发的程序需要打包成cab文件部署到手机上。除了通过ActiveSync安装外,还可以通过网络下载、存储卡运行等方式来安装应用程序。对手机的要求是,必须和开发程序的目标平台相兼容。比如为Windows Mobile 5开发的应用程序,可能就没办法很好地运行在Windows Mobile2003平台上。

14、Q:在模拟器上面开发程序,和真实环境有区别么?需要注意一些什么?

  A:模拟器的仿真度十分高,Windows Mobile 5的模拟器甚至可以支持ARM指令,所以基本不会遇到兼容性的问题。但是对于一些需要连接外部设备的应用场景,比如前边说的无线网络,还有GPS设备等,就需要用到实际设备了。

15、Q:当开发国际化应用程序时,应该特别注意哪些方面?

  A:对于国际化的应用程序,.NET本身就已经提供了非常好的支持。可以把用户界面的文字保存在相应的资源文件中,然后由应用程序判断操作系统的语言版本来调用相应的文字。

16、Q:用.NET开发Pocket PC程序需要考虑设备具体使用的是哪种CPU吗?

  A:不必。无论是在虚拟机上的x86指令集,还是实际设备上的ARM指令集,对.NET Compact Framework程序的运行来说都一样。

17、Q:Windows Mobile 5 是否支持通过语音控制新的开发程序?

  A:现在还不支持。

18、Q:可以在vwd2005 bata2中开发Pocket PC程序吗?Pocket PC是否具有浏览器?

  A:可以,Pocket PC平台是内置浏览器的。

19、Q:Visual Studio 2005的Mobile开发,支持Mobile 2003的设备吗?

  A:支持,VS 2005本身就自带Windows Mobile 2003的SDK。

20、Q:Windows Mobile 5.0 for Smartphone较之前的版本有何明显的区别?对于测试这一领域,我们需要注意些什么?

  A:Windows Mobile 5的Smartphone平台更多的变化是在API层面,比如对数据库的支持、对GPS API的支持等, Windows Mobile 5 SDK文档中对此有详细地说明。

21、Q:对开发来说CDMA和GPRS的数据传输是透明的吗?

  A:对于软件开发来说数据传输是透明的,CDMA和GPRS对于上层应用程序来说,只要支持HTTP协议或者TCP/IP协议就可以进行数据传输的操作。

22、Q:Visual Studio .NET能否支持Nokia的S60系列系统开发?

  A:可以,Visual C++能支持Nokia S60的开发。

23、Q:Pocket PC与Mobile开发的主要区别在哪里?

  A:Window Mobile是微软公司基于Windows CE.NET的一个平台。它包含Pocket PC和Smartphone两个版本。

24、Q:SDE从哪里可以下载?Pocket PC 2005的模拟器可以从哪里下载?

  A:SDE是早期用来开发移动设备程序的VS扩展,目前网上似乎很难找到。其实不用安装它,安装所需版本的Pocket PC或者Smartphone的SDK即可。各个版本的Windows Mobile开发的SDK和模拟器的地址可以从这篇Blog上下载(http://twodays.cnblogs.com/archive/2005/06/30/184107.htm)。

25、Q:.NET Compact Framework 2.0能装在Windows Mobile 2003上吗?

  A:可以。.NET Compact Framework 2.0必须手动安裝到Windows Mobile 2003的机器上。

26、Q:请问有没有好的Windows Mobile编程的网站或者论坛?

  A:OpenNETCF.org、www.devbuzz.com、www.codeproject.com、www.msdn.com/mobility/、www.pocketpcdn.com

27、Q:Windows Mobile 2003上的.NET Compact Framework能升级到.NET Compact Framework 2.0吗?

  A:可以。.NET Compact Framework 2.0必须手动安裝到Windows Mobile 2003的机器上。

28、Q:请问编写WML文件与使用.NET Compact Framework进行开发有什么联系和区别?

  A:WML是能够利用WAP浏览器进行浏览的文件,是一种基于Web的开发方式。.NET Compact Framework是在设备上运行的程序,是基于应用的开发方式。

29、Q:在使用.NET Compact Framework 1.0进行开发时,用EVC直接调用Native代码与使用C#通过P/Invoke在性能上有什么差别?在.NET Compact Framework 2.0上,用C++直接调用和用C#通过P/Invoke又如何呢?

  A:用EVC調用Native API的效率,会比使用.NET Compact Framework通过P/Invoke调用Native API要高,这是.NET Compact Framework本身的特性。在从托管代码中调用Native API时,其内部会进行一些额外的类型转换动作,这会导致效率的降低。

30、Q:有没有支持显示HTML文本的控件?

  A:WebBrowser控件可以用于HTML文本。

31、Q:CAB安装后会在Pocket PC上自动生成“卸载程序”,如何制作安装包,才能不自动产生“卸载程序”?

  A:利用VS 2005建立Smart Device Cab Project,在Solution Explorer的Cab Project上点击鼠标右键选择Property,即可看到有一个选项为NoUninstall,默认为False,改为True就可以了。

32、Q:OpenNETCF能运行在.NET Framework 1.1环境下吗?其中的控件可以与.NET Framework 1.1控件混合使用吗?怎样在Visual Studio .NET 2003中加入OpenNETCF控件?

  A:当初在设计NET Compact Framework 1.0/1.1时,由于考虑到移动设备的资源有限,所以有些原本.NET Framework 1.1中已经提供的类和控件就被删除了,OpenNETCF Smart Device Framework主要是针对.NET Compact Framework 1.0/1.1中没有的功能,开发出来的类似的类型和额外的功能,以弥补.NET Compact Framework 1.0/1.1不足之处。这套Framework主要是供.NET Compact Framework程序开发所用,除了少部份针对PC与Pocket PC的同步功能所编写的类之外,大部分都是在.NET Compact Framework上执行的,一般不支持.NET Framework。OpenNETCF的Smart Device Framework安装完毕之后,可以在VS 2003左侧的工具箱中看到OpenNETCF的控件,可以直接拖放来使用。

Windows Mobile 开发常见问题集(二)

1、Q:请问如何才能保证应用程序能够及时地释放系统资源?
  
  A:由于.NET Compact Framework所运行的移动设备,受限于CPU、内存、电源,因此其中的Garbage Collection时经过调整的,垃圾回收的速度比.NET Framework更快。通过调用Dispose()方法,可以立即释放掉对象所占用的非托管资源。

2、Q:在Visual Studio中可以定义一个所有文件都可以使用的宏吗?比如:#define AA,要求在所有的.cs文件中都可以使用#if AA public class A() #else public class B();

  A:可以。在VS 2005的解决方案资源管理器中,用鼠标右键单击项目,选择其属性。在属性对话框的Build页中,可以找到conditional compilation symbol,在其中输入AA,即可在该项目的所有C#源代码文件中使用这个符号。

3、Q:可以将Smartphone应用程序转换为Pocket PC应用程序吗?

  A:可以。在.NET Compact Framework 2.0中,只要您没有用到某些特殊的API,Pocket PC应用程序与Smartphone程序是可以互相转换的,只需要在控件上做些调整即可。

4、Q:.Net Framework 2.0有没有对Media coder/decoder的支持?开发第三方的媒体播放程序可以不依赖.Net CF2.0吗?

  A:.NET Compact Framework 2.0本身可以开发Direct3D Mobile的应用程序。也可以在VS 2005中以C++开发Native Code的媒体播放程序,而无须依赖.NET Compact Framework 2.0。

5、Q:使用.Net开发的智能设备程序是否比用C语言开发的程序效率低很多?

  A:使用.NET开发的程序会比使用C语言开发的本地程序要慢一些,不过对于一般的应用软件来说,下率不会差太多,除非是需要实时处理硬件或I/O的程序,必须要使用C语言进行开发之外,一般的应用程序用.NET Compact Framework开发即可,因为这样可以获得最好的灵活性和可移植性。

6、Q:用托管C++开发的应用程序执行效率会不会比用C#开发的应用程序高?

  A:不会。由於托管C++与C#源代码在经过编译之后,都将成为IL代码,由.NET Compact Framework来执行,因此在效率上不会有差别。

7、Q:请问.NET Compact Framework 2.0对于使用不同CPU的移动设备支持好吗?.NET Compact Framework 2.0在GSM应用方面有没有增强?
  A:.NET Compact Framework具有Windows Mobile跨平台的特性,因此开发时不需要考虑底层的OS、CPU和其它硬件因素。目前.NET Compact Framework对常见的CPU都能够支持,例如ARM、MIPS、SH、x86等。另外在GSM应用方面,主要针对Smartphone的应用作了加强。
8、Q:请问MFC在Windows Mobile Development中处于什么地位?Douglas Boling写的Programming Microsoft Windows CE .NET一书中好像并不推崇使用MFC开发Windows Mobile应用程序。

  A:MFC还是以本地C++的方式进行开发,其特点是执行效率高,但必须花费更多的心思在資源分配、回收等编程技巧上。如果使用.NET Compact Framework进行开发,虽然执行效率比本地程序略差,但整体而言,可移植性与灵活性都较好,而且不必为回收资源担心,开发者能够专注于真正重要的业务逻辑流程。

9、Q:.NET Compact Framework 2.0与1.0有什么区别?

  A:.NET Compact Framework 2.0主要针对1.0原有的控件及类库进行了改善,提供了更多的支持,并新增了许多类型和控件,.NET Compact Framework 2.0更加接近.NET Framework,同时在效率上也相对1.0有所提升。

10、Q:在制作安装程序的时候,如何在start->program菜单中生成程序的快捷方式?

  A:在VS 2005中建立Smart Device Cab Project,在File System页面中,可以看到Application Folder,这就是Start->Program的位置,可以先建立Primary Output的快捷方式,然后将此快捷方式移到Programs Folder,并构建Cab文件即可。

11、Q:移动设备与WEB网页设计有什么主要区别?

  A:Visual Studio开发环境中移动设备与Web设计是非常类似的 ,可以使用同样的语言进行设计, 不同的只是能够使用的类以及控件有所区别。

12、Q:.NET Compact Framework中可以实现鼠标的双击、右击、中间键单击等用户事件吗?

  A:运行Windows Mobile的设备没有鼠标,所以这些事件也不存在。对于常用的右键弹出上下文相关菜单,在触摸屏上一般用单击并且按住一段时间来实现。

13、Q:Mobile应用程序的界面处理可以使用CSS样式表吗?

  A:不可以。

14、Q:Smartphone上面能够支持横屏幕吗?

  A:不支持。

15、Q:如何在Pocket PC中调整控件的位置使得应用程序可以支持横向屏幕?

  A:可通过设置控件的Anchor和Dock属性来自适应屏幕。

16、Q:界面开发完成后,在移植方面需要注意些什么?

   A:一般来说,要移植到不同平台上必需要重新设计用户界面;可以重用的只是业务逻辑,不是用户界面。
17、Q:我在移动开发过程中用到了很多控件,难以在一页之内显示,如何为它们添加一个滚动条?

  A:可以将这些控件放到一个Panel中,并设置其AutoScroll属性为true即可;如果使用VS2005,拖拽数据源到窗体上时,会自动将所有控件包括在一个Panel里。

18、Q:TableAdapter在.NET Compact Framework 1.0中从未出现过,是新特性吗?

  A:是的,TableAdapter是.NET Compact Framework 2.0中新增加的。

19、Q:SQL Mobile带有像SQL Server那样企业管理器吗?Visual Studio 2005支持在桌面上直接查看SQL Mobile的数据库吗?

  A:您可以通过SQL Server 2005的企业管理器连接到SQL Mobile数据库进行编辑。Visual Studio 2005也支持在桌面上创建或修改SQL Mobile数据库文件。

20、Q:提交成功后如何取消保存?

  A:目前BindingSource尚不支持事务,因此提交成功后是没有办法再undo的。

21、Q:移动设备内存较小,填充DataSet是否有大小限制?

  A:DataSet在逻辑上并没有对大小的限制。但是DataSet的大小必须小于当前前的可用内存,否则会有内存分配不成功的异常出现。

22、Q:如果数据源中的数据在显示前需要处理(例如格式转换),可以使用DataBinging吗?

  A:BindingSource是直接将DataSet与控件进行关联,所以如果需要进行其他操作的话,就不能使用BindingSource。或者,可以在访问数据库后,先在DataSet里对需要转换的数据进行必要的处理之后,再进行显示。

23、Q:DataSet实际上在内存中产生了一套数据副本,如何解决版本控制的问题?

  A:DataSet本身不存在版本控制的问题。在把数据提交回SQL Mobile的时候,的确需要有一些机制来保证修改完成的数据应该是最新的,但是DataSet本身的数据结构是不会发生变化的。

24、Q:能否通过Pocket PC上的程序更新服务器上的数据库信息?

  A:可以。可以使用SQL Mobile中的RDA或者是合并复制的方法和远程SQL Server数据库进行数据同步或更新。具体的实现可以参考SQL Server相关部分的文档。

25、Q:SQL Mobile一定要要安装在移动设备上吗?

  A:是的。SQL Mobile需要安装在Windows Mobile或者Windows CE设备上。

26、Q:SQL Moble支持存储过程吗?

  A:目前还不支持。

27、Q:SQL Mobile必须和应用程序部署在同一台设备上吗?可否远程连接?它是否是一个文本数据库?

  A:是的。SQL Mobile必须和应用程序部署在同一个设备上,现在还不支持远程连接。SQL Mobile是一个文件数据库,但不是一个文本数据库。

28、Q:能不能在一些应用中以XML替代SQL的作用?

  A:可以的。XML的查询效率比SQL Mobile要低,但是在数据比较少的情况下不需要安装更多的组件,这是XML的一个优势。

29、Q: Tableadapter与DataAdapter之间有何区别?DataAdapter是多个TableAdapter的组合吗?

  A:不是的,TableAdapter是对DataAdapter的一个扩展,TableAdapter本身包括了对应数据表的信息。TableAdapter完成从数据库连接、执行SQL语句到将结果填充到DataSet中的一个完整操作,而DataAdapter只支持数据填充的操作。

30、Q:做了SQL Moblie的sdf文件后,Publications后的数据库表中会出现msrepl_tran_version或rowguid字段,这是为什么?

  A:这两个字段是为了保证数据同步,由系统自动添加的,请不要进行修改。

31、Q:网上出了个Reflector反编译工具,可以99%反编译用C#开发的EXE和DLL,怎么才能更好地保护应用程序?

  A:目前大部分应用程序采用混淆和对关键字符串加密的方式,更好的方式可能还要继续探讨。

Windows Mobile 开发常见问题集(三)

1、Q:SQL Mobile的SQL语法和SQL Server的语法有差异么?

  A:SQL Mobile的语法和SQL Server的语法略有差异,可以从SQL Mobile的文档中查找SQL Mobile具体支持哪些SQL语句。总的来说,对绝大部分的开发来说,这些差异不会造成影响。

2、Q:SQL Mobile支持B/S模式吗?

  A:不支持。

3、Q:可以在.NET Compact Framework 1.0上访问由.NET Compact Framework 2.0产生的数据库吗?

  A:SQL Mobile数据库的格式和SQL Server CE 2.0是相同的,因此可以直接在.NET Compact Framework 1.0中进行访问。

4、Q:SQL Mobile数据库文件支持XCOPY吗?可以简单地复制到其他Windows Mobile设备上吗?

  A:是的。SQL Mobile数据库本身是一个文件数据库,直接复制到其他安装了SQL Mobile支持组件的Windows Mobile设备或模拟器上就可以使用了。

5、Q:Visual Studio .NET 2003是否支持Windows Mobile 5.0的开发?

  A:不可以,如果开发基于Windows Mobile 5.0的应用程序请使用Visual Studio 2005。

6、Q:要想从传统的PC程序员转向到移动设备的开发上来,需要在技术上作哪些准备?

  A:移动设备的开发对于基础开发语言和开发技术的要求与PC上是相同的,只需要了解移动设备在哪些方面与PC平台有所不同即可。

7、Q:C#可以开发Windows Moblie应用程序吗?

  A:可以。

8、Q:如果获取.NET Compact Framework 2.0的安装程序并将其安装到Windows Mobile 5.0设备中?

  A:Visual Studio 2005提供了.NET Compact Framework 2.0安装程序,在开发部署时会自动部署到移动设备上。

9、Q:Windows Mobile 5.0中没有集成.NET Compact Framework 2.0,是不是生成的应用程序安装包就应该带上.NET Compact Framework 2.0?

  A:技术上来说是的。但能否在应用程序中提供.NET Compact Framework 2.0取决于微软对此的授权情况。

10、Q:如何把.NET Compact Framework 2.0与应用程序一同打包发布?

  A:.NET Compact Framework 2.0有一个单独的CAB安装包,可以把此文件与应用程序打成一个安装包。

11、Q:用Visual Studio 2003开发可以获得很好的兼容性吗?

  A:用Visual Studio 2003开发的基于.NET Compact Framework 2.0的程序可以在Windows Mobile 5.0的设备上运行。

12、Q:在Windows Mobile上面是否开发COM+或者DLL?

  A:可以开发DLL动态共享库。

13、Q:C#是否支持Windows Mobile 5.0的DirectX开发?

  A:支持。

14、Q:现有的使用Visual Studio开发的Smartphone 2003应用程序,可以移植到Windows CE 5.0平台上吗?

  A:可以。

15、Q:Windows Mobile 5.0内置红外线接口API吗?

  A:Windows Mobile 5.0对红外接口的支持并没有更新,需要采用之前的方法进行红外接口的开发,例如与串口通信等。

16、Q:如何开发手机游戏,特别是能够交互的网络游戏?

  A:Windows Mobile对游戏开发的支持是比较充分的,可以采用DirectX技术进行3D或2D界面的开发;对于网络部分,Windows Mobile可以支持socket通信方式。所以,从技术上来讲,开发网络游戏是完全没有问题的。

17、Q:我们公司目前更多关注的是嵌入式领域,也就是Windows CE,而非Windows Mobile。我们主要是在关注IPTV领域,在这方面有哪些的资源?

  A:Windows CE是一种可自定义的嵌入式操作系统,适用于各种内存很少的设备。OEM可以使用Windows CE设计平台和自定义应用程序,使用户可以获得各种设备的最佳体验,例如手持设备、瘦客户机、逻辑控制器以及各种高级消费类电子产品。 Windows Mobile是基于Windows CE构建的一种完善的软件平台。与Windows CE不同,Windows Mobile Smartphone和Pocket PC操作系统专为要求特殊硬件配置的设备而设计。该软件包括标准化的接口和应用程序,可确保在各种硬件设计中的兼容性。 所以Windows Mobile和Windows CE的资源是通用的,您可以在http://www.microsoft.com/china/mobile、http://www.microsoft.com/windowsmobile/,以及微软社区http://www.microsoft.com/china/windowsmobile/communities/default.mspx获得相应的资源和帮助。

18、Q:我们在Windows Mobile上进行应用开发遇到一些底层的接口问题,如何取得微软的技术支持?

  A:微软将一如既往地对基于Windows Mobile操作系统开发的独立软件开发商和开发人员进行支持,可以直接向800-820-3800全球技术支持中心寻求支持,或者提供具体问题细节,我们将给出相应的解决方案。

19、Q:如何才能将我们的软件放到微软的Mobile2Market项目中去?对MVP有没有什么优惠?

   A:Mobile2Markert项目在中国是非常优惠的,目前对MVP没有特别优惠。另外,如何将软件放到微软的Mobile2Market中请参考http://www.microsoft.com/china/mobile/developer/developerprograms/mobile2market/default.asp。

20、Q:哪些工具可用于Pocket PC 2003开发?

  A:要构建Pocket PC 2003本机C++应用程序,您需要Microsoft eMbedded Visual C++ 4.0、Microsoft eMbedded Visual C++ 4.0 Service Pack 3,以及Pocket PC 2003 SDK。

21、Q:为了支持 Windows Mobile 2003 Second Edition 的增强功能(例如高分辨率或横向屏幕),应该在应用程序中做些什么?

  A:Windows Mobile 2003 Second Edition 提供了全新的屏幕方向和分辨率,包括针对Pocket PC的横向、方形和VGA支持以及针对Smartphone的QVGA支持。这种版本不需要新的SDK。

22、Q:Pocket PC 2002应用程序可以在Pocket PC 2003 设备上工作吗?

  A:使用文档化API且功能良好的Pocket PC 2002 应用程序无需重新编译即可在 Pocket PC 2003 设备上运行。

23、Q:如何从eVB迁移到Visual Basic .NET?

  A:从eVB迁移到Visual Basic .NET并不容易,但迁移的好处远远超过了成本: • 数据类型更丰富:eVB只有16 字节的VARIANT;Visual Basic .NET使用.NET Framework通用类型系统。 • 执行更快:eVB需要解释;Visual Basic .NET在执行前由JIT(实时)编译器编译为本机代码。 • 错误处理更完善:eVB仅支持“On Error”;Visual Basic .NET支持结构化异常处理。 • 支持结构:eVB不支持;Visual Basic .NET支持命名空间、类和结构。 • 面向对象:eVB是面向过程的;Visual Basic .NET支持完全的OOP(面向对象编程)。 • “一等公民”:eVB总是希望迎头赶上MFC;Visual Basic .NET则是.NET的核心。 • 本机XML支持:eVB不支持;Visual Basic .NET支持本机XML和XML Web服务。 • 数据模型更完善:ADO.NET远远超过了ADOCE;它是最好的数据模型。 • 执行更安全、更可靠:eVB是一种脚本语言;Visual Basic .NET为托管代码。 • 还有许许多多! 同时,还有各种各样的资源(从移植实验到技术文章)可以帮助开发人员进行这种过渡。

24、Q:应该使用什么开发工具来编写基于.NET Compact Framework的Pocket PC应用程序?

  A:Microsoft Visual Studio .NET 2003允许Visual Basic .NET或C#编程人员创建Pocket PC 2000、Pocket PC 2002和Pocket PC 2003设备的托管代码应用程序(即那些以.NET公共语言运行库为目标的应用程序)。要开发Pocket PC 2000和Pocket PC 2002设备的托管代码应用程序,您可以使用即装即用的Visual Studio .NET 2003。在开发过程中,Visual Studio .NET 2003将会自动地将.NET Compact Framework安装到这些设备的RAM中。.NET Compact Framework已经在所有Pocket PC 2003设备的ROM 中,而且Visual Studio .NET 2003通过Pocket PC 2003 SDK支持它。

25、Q:有什么资源可以用于进行Windows Mobile 2003 Second Edition的开发?

  A:下载新的Windows Mobile Developer资源包,其中包括白皮书以及新的和更新的代码示例。该版本不需要全新的SDK。可以用新的模拟器软件包对应用程序进行测试。eMbedded Visual C++ 4.0开发人员应当下载eMbedded Visual C++ 4.0 Service Pack 3。

26、Q:什么工具可用于Smartphone 2002开发?

  A:要开始开发Microsoft Smartphone 2002应用程序,您需要eMbedded Visual C++ 3.0和Smartphone 2002 SDK。两者都可以在Windows Mobile Developer获得。

27、Q:MFC或ATL可用于Smartphone 2002开发吗?

  A:不可以,Smartphone 2002不支持MFC与ATL开发。

28、Q:可以使用eMbedded Visual Basic 3.0来构建Smartphone 2002应用程序吗?

  A:不可以,不支持以Smartphone 2002为目标的eVB 开发。

29、Q:哪些工具可用于进行Microsoft Smartphone 2003开发?

  A:对于Smartphone 2003,有两种开发选择,或者通过带有Service Pack 3的eMbedded Visual C++ 4.0开发本机代码,或者通过Visual Studio .NET 2003开发托管代码。这两种情况都需要下载Smartphone 2003 SDK。Windows Mobile 2003 Second Edition模拟器软件包使您可以在Second Edition设备上测试应用程序。eMbedded Visual C++ 4.0和Smartphone 2003 SDK都可以在Windows Mobile Developer获得。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Time limit is exhausted. Please reload CAPTCHA.