这是我7月26日Webcast Q&A内容,很多问题还是很有代表性的,给大家贴出来.
** ** 使用 .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 的软硬件的介绍的文章 ?
A : Smartphone 介绍方面的文章可以在 MSDN 网站上找到,也有许多第三方的网站,比如 Smartphone Developer Network 等。
Q : What's the difference between Managed code and Native code?
A :托管代码是指使用 .NET CF 开发的程序代码,可执行文件被编译成 IL ,执行时需要有 .NET 的运行时环境。而本地代码指用 C++ 等语言开发的程序代码,可执行文件被编译成与 CPU 指令集有关的机器码,可以直接直接运行。
Q : 能不能简要介绍一下 Magneto 里面对 OTA 和 MMS 的支持 ?
A : Magneto 对 OTA 有很好的支持,你可以去看 SDK 文档中通讯部分,有针对 OTA 的专门介绍。 MMS 的应用程序基本都是由第三方开发的,因为 MMS 是基于 WAP 协议的,而 Magneto 本身对 WAP 的支持也很好,具体的协议也可以在 SDK 文档里找到。
Q : 请问用 Vb.net 开发 PDA 数据库程序能不能用 Ado.net? 我看引用里没有 system.data.oledb?
A : VB.NET 开发 PDA 数据库不需要引用 System.data.oledb ,只需要引用 System.Data.SqlServerCe 命名空间就可以了。里边的数据库操作类和 ADO.NET 是基本一致的。你可以用他们来开发针对 SQL Server CE 的应用程序。
Q : 在 C++2005 中,可以用 .Net Compact Frame 吗?
A :不能,现在 .NET CF 只支持 C# 和 VB.NET ,而不支持 C++/CLI 。但是在 VS.NET 2005 中可以用 C++ 来开发 Native 代码来支持移动设备。
Q : 从什么地方可以得到 smartphone 开发环境 ?
A : Smartphone 的 SDK 可以在微软网站上找到,而 Visual Studio 2005 Beta 2 可以通过参加微软活动的方式获得。 MEDC 2005 的参加者都获得了 VS.NET 2005 和 Windows Mobile 5 SDK 的开发光盘。
Q : 请问什么时候可以讲解一下如何在 PC 端调用 smartphone 的 api 。尤其是 RAPI 的 RapiInvoke() 方法
A :好,稍后我会准备这方面的内容,如果有机会在以后的 Webcast 里会有专门的讨论。您可以关注一下我的 BLOG ,里边有一些介绍性的文章。
Q : 托管性的代码执行效率怎么样。和 VC++ 相比较。
A :托管代码的执行效率肯定是不如本地代码的。但是托管代码也有一些好处是无法取代的。
Q : 目前手机开发种类很多有针对 linux 平台的、 Symbian 平台的、 windows mobile 的 , 那种开发前景最大 ?
A :开发前景是和手机平台的发展密切相关的。现在尽管 Symbian 平台市场占有率比较大,但是 Windows Mobile 平台和 Linux 平台发展也很快,将来如何,实在不好判断。
Q : Do 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 Access 么 ? sqlce 太大了 。
A :可以使用 Pocket Access 来开发 Windows Mobile 上的应用程序。你可以采用 C++ 调用 OLEDB 或者 ADOCE 的方式来访问 Pocket Access 数据库。
Q : vs2005 的新功能是否只在 windows mobile 5 里受到支持 , 2003 是否被支持 ?
A :新功能分两个部分,一部分是 .NET CF 2.0 的新功能,这部分的功能是被 Windows Mobile 2003 支持,但不被 .NET CF 1.0 支持;而另一部分是 Windows Mobile 5 的特有功能。教大家一个最简单的分辨方法:去看 .NET CF 2.0 和 Windows Mobile 5 开发文档的“ What’s New ”部分,那里边分别描述了上面的内容。
Q : 写好的程序在那里用 ?
A :不但可以在 Windows Mobile 设备上运行,也可以直接运行在模拟器中。
Q : 您的 Blog 地址是 ?
A : http://Blog.csdn.net/aawolf
Q : 请问如何在模拟器里面配置连接到移动网络 ? 如果模拟器不能连接到移动的网络,那你刚才的 demo 发短信是怎么成功的?
A :模拟器如果需要连接移动网络的话,必须有专门的硬件提供支持,可以在开发 PC 的串口上连一个 GPRS 的模拟器, SDK 文档中有专门的说明。刚才 DEMO 中的通讯网络是虚拟的,由软件模拟的,并没有实际连接到无线网络上。
Q : sqlce 可以像 pocket Access 那样仅一个文件就能运行么 ? 不会像 Pc 上那样要安个服务器才能用吧 ?
A :不会的,你需要在 Windows Mobile 上安装 SQL Server CE 的支持库,就是一些 DLL 文件。而 SQL Server CE 的库文件是一个单独的文件,不需要安装一个服务器。
Q : 现在市场上有 Mobile 5 的手机吗 ?
A :现在还没有。 HTC 会在今年秋天的时候推出一款 Windows Mobile 5 的 3G 手机。 <span lang="PT-BR" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana; mso-ansi-language: