桌面端的移动运算(一)

桌面端的移动运算

Larry Roof

March 2004

Applies to:
Microsoft® .NET Compact Framework
Windows Mobile™-based Pocket PCs
Windows Mobile-based Smartphones
Microsoft ActiveSync®

摘要:学习关于 Remote API(RAPI) 文件操作,和如何使用 .NET Compact Framework 将其整合到应用程序开发中去。

Introduction

在我的上一篇文章中,我介绍了关于移动计算的情况。在那篇文章中,我重点介绍了特定的 Pocket Access 数据库的存储选项,和它们如何被集成到 .NET Compact Framework 的应用程序开发中去。

在这篇文章中,我们继续关于选项的话题。我将向你介绍桌面端的移动操作,这个观点经常被移动开发的初学者所忽略。许多开发者的注意力被移动应用程序的外表所吸引,以致于忽略了如何让一台桌面机或服务器应用程序成为移动解决方案一部分的问题。显然,一个移动解决方案的大部分是基于设备的,但是几乎所有的方案最后都需要导入或导出设备中的数据。这包括设备端的数据聚合,来自服务器的数据交付,构造数据和平滑地应用程序更新。在这篇文章中,我将通过一个简单的桌面程序来演示 Remote API :

?SPAN style="FONT: 7pt 'Times New Roman'">

从设备拷入或拷出文件。

?SPAN style="FONT: 7pt 'Times New Roman'">

移动设备上的文件。

?SPAN style="FONT: 7pt 'Times New Roman'"> 删除设备上的文件。

?SPAN style="FONT: 7pt 'Times New Roman'"> 在设备上开始一个应用程序。

?SPAN style="FONT: 7pt 'Times New Roman'"> 得到设备的系统信息。

文章的开始和将要看到的例子是“ Two for Road ”专栏的一部分,将被显示到 Microsoft Visual C#® .NET 和 Visual Basic® .NET 中。

The Remote API Library

本月的示例程序示范了 Remote API(RAPI) 的强大。这些 API 是 ActiveSync 的主要组件。 RAPI 是包含一套函数的库,可以被用于在一个桌面端应用程序中管理设备,包括设备的文件夹和文件、注册表和系统信息。

为了简单地访问 Remote API ,我们将使用 OpenNETCF 组织的信息库,一个可以从 OpenNETCF website 得到的开源资源。这套类库封装了 RAPI 所有的功能,提供了一套包含 RAPI 所有特性的方法。

Classes Provided through the Communication Namespace

OpenNETCF.Desktop.Communication 命名空间提供了下列类:

Table 1. Classes offered in the OpenNETCF.Desktop.Communication namespace

|

** Class **

|

** Description **

---|---

ActiveSync

|

提供访问 Microsoft ActiveSync 下面的函数。

AutoStartApps

|

当一个 ActiveSync 会话开始时,提供信息并配制运行的应用程序。

FileInformation

|

被 FindFirstFile 和 FindNextFile 方法返回的文件信息结构。

FileList

|

FileInformation 类的集合。经常被桌面应用程序使用的查询和管理一个连接设备的文件结构。

RAPI

|

提供一个基于 RAPI 函数方便的包装。

RAPIException

|

定义被 RAPI 类抛出的异常。

Registry

|

提供对基本 RegistryKey 类的访问,可以被用于访问和修改连接设备注册表中的值和主键。

RegistryKey

|

在已连接的设备注册表中定义一个主键级节点。

从上边的表格可以看到, OpenNETCF.Desktop.Communication 提供了大量的桌面函数,更多的细节需要一篇单独的文章来说明。对于这篇文章,我将关注 RAPI 类,特别关注三个该类的主要部分:

?SPAN style="FONT: 7pt 'Times New Roman'"> 管理设备的目录和文件。

?SPAN style="FONT: 7pt 'Times New Roman'"> 在设备上启动一个应用程序。

?SPAN style="FONT: 7pt 'Times New Roman'"> 得到设备的系统信息。

我之所以选择这三个特性,是因为我发现对于移动解决方案的开发者来说这三个特性有很大的用处。

Working with OpenNETCF's Communication Library

OpenNETCF Communication library 是通过 OpenNETCF.Desktop.Communication.DLL 文件来提供的。你需要包含一个引用到你的桌面应用程序中。添加这个引用,需要下列步骤:

1 . 在 Solution Explorer 窗口中,右击References 文件夹,将显示一个弹出菜单。

2 . 在菜单中选择Add Reference 。

3 . Add Reference 对话框显示。选择OpenNETCF.Desktop.Communication 组件。

点击 OK 按钮,将选择的组件添加到你的项目中去。

The RAPI Class

表 2 提供了 RAPI 类方法的列表,这些都是我发现对移动移用程序开发最为有用的。

Table 2. Useful RAPI class methods for developing mobile applications

** Method **

|

** Description **

---|---
<

Published At
Categories with Web编程
Tagged with
comments powered by Disqus