使用.NET CF开发Smartphone应用程序 FAQ

这是我7月26日Webcast Q&A内容,很多问题还是很有代表性的,给大家贴出来.

<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 11.25pt; HEIGHT: 10.5pt" alt="" type="#_x0000_t75"><imagedata o:href="http://www.msdnwebcast.com.cn/images/liu3_2.gif" src="file:///C:/DOCUME~1/wolf/LOCALS~1/Temp/msoclip1/01/clip_image001.gif"></imagedata></shape>使用.NET CF开发Smartphone应用程序 ---Level 300
活动日期: 2005-07-26 14:30 -- 16:00
讲: 马宁

________________________________________

Q新建项目的时候选择哪个项目类型才能创建刚才的应用程序呢?

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

________________________________________

Q那有一些smartphone的软硬件的介绍的文章

ASmartphone介绍方面的文章可以在MSDN网站上找到,也有许多第三方的网站,比如Smartphone Developer Network等。

________________________________________

QWhat's the difference between Managed code and Native code?

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

________________________________________

Q能不能简要介绍一下Magneto里面对OTAMMS的支持

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

________________________________________

Q请问用Vb.net 开发PDA数据库程序能不能用Ado.net? 我看引用里没有system.data.oledb?

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

________________________________________

QC++2005中,可以用.Net Compact Frame 吗?

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

________________________________________

Q从什么地方可以得到smartphone开发环境

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

________________________________________

Q请问什么时候可以讲解一下如何在PC端调用smartphoneapi。尤其是RAPIRapiInvoke()方法

A:好,稍后我会准备这方面的内容,如果有机会在以后的Webcast里会有专门的讨论。您可以关注一下我的BLOG,里边有一些介绍性的文章。

________________________________________

Q托管性的代码执行效率怎么样。和VC++相比较。

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

________________________________________

Q目前手机开发种类很多有针对linux平台的、Symbian平台的、windows mobile那种开发前景最大

A:开发前景是和手机平台的发展密切相关的。现在尽管Symbian平台市场占有率比较大,但是Windows Mobile平台和Linux平台发展也很快,将来如何,实在不好判断。

________________________________________

QDo you use C#.net to develop? Can I use VS.net2003 to develop Applications run on 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

________________________________________

Q就是pda上不能用pocket Accesssqlce太大了

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

________________________________________

Qvs2005的新功能是否只在windows mobile 5里受到支持2003是否被支持

A:新功能分两个部分,一部分是.NET CF 2.0的新功能,这部分的功能是被Windows Mobile 2003支持,但不被.NET CF 1.0支持;而另一部分是Windows Mobile 5的特有功能。教大家一个最简单的分辨方法:去看.NET CF 2.0Windows Mobile 5开发文档的“What’s New”部分,那里边分别描述了上面的内容。

________________________________________

Q写好的程序在那里用?

A:不但可以在Windows Mobile设备上运行,也可以直接运行在模拟器中。

________________________________________

Q您的Blog地址是

Ahttp://Blog.csdn.net/aawolf

________________________________________

Q请问如何在模拟器里面配置连接到移动网络?如果模拟器不能连接到移动的网络,那你刚才的demo发短信是怎么成功的?

A:模拟器如果需要连接移动网络的话,必须有专门的硬件提供支持,可以在开发PC的串口上连一个GPRS的模拟器,SDK文档中有专门的说明。刚才DEMO中的通讯网络是虚拟的,由软件模拟的,并没有实际连接到无线网络上。

________________________________________

Qsqlce 可以像pocket Access那样仅一个文件就能运行么? 不会像Pc上那样要安个服务器才能用吧?

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

________________________________________

Q现在市场上有Mobile 5 的手机吗?

A:现在还没有。HTC会在今年秋天的时候推出一款Windows Mobile 53G手机。

________________________________________

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

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

________________________________________

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

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

________________________________________

QWhat should we pay special attention to when develping globalized applications? Thanks

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

________________________________________

Q.net 开发ppc程序就不用管设备是什么cpu了吧?

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

________________________________________

你可能感兴趣的:(.net,应用服务器,网络应用,mobile,VB.NET)