Working with the RAPI Class<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
为了简化RAPI类的操作,我将添加一个using声明到示例程序的C#版本,或添加一个Imports声明到VB.NET中,示例如下:
[VC#.NET]
using
OpenNETCF.Desktop.Communication;
[VB.NET]
Imports
OpenNETCF.Desktop.Communication
另外,我将添加一个单独的module-level变量,myrapi,用于保存一个RAPI类的实例。
[VC#.NET]
// Declare an instance of the RAPI object.
RAPI myrapi;
[VB.NET]
' Declare an instance of the RAPI object.
Dim WithEvents myrapi As New rapi
Connecting to the Device
当你的桌面程序使用RAPI类时,第一步是要与设备建立一个连接。
注意:在桌面程序中使用RAPI必须要有一个PC与设备之间的激活的ActiveSync连接。
在这篇文章包含的示例程序中,在Form_Load事件中将连接到设备。为了连接到设备,你使用RAPI类的Connect方法。正如下面代码所演示的,我紧接着检查了RAPI类的DevicePresent属性,来校验连接是否成功。
[VC#.NET]
try
// Connect to the device.
{
myrapi.Connect();
while (! myrapi.DevicePresent)
{
MessageBox.Show("Please connect your device to your PC using
ActiveSync and before clicking the OK button.",
"No Device Present");
myrapi.Connect();
}
}
catch (Exception ex)
{
MessageBox.Show("The following error occurred while attempting
to connect to"+ " your device - " + ex.Message,
"Connection Error");
Application.Exit();
}
[VB.NET]
Try
' Connect to the device.
myrapi.Connect()
Do While Not myrapi.DevicePresent
MessageBox.Show("Please connect your device to your PC using
ActiveSync and " & _
"before clicking the OK button.", "No Device Present")
myrapi.Connect()
Loop
Catch ex As Exception
MessageBox.Show("The following error occurred while attempting to
connect to" & _
" your device - " & ex.Message, "Connection Error")
Application.Exit()
End Try
在连接确定后,我们将准备来探索RAPI提供的功能了。我们将从在你的桌面程序中如何管理设备的文件夹和文件开始。
Working with Files
RAPI提供了很多的功能为了操作文件夹中的文件。我将选择示范三个文件相关的属性:从设备上拷入、拷出文件,在设备上移动文件,在设备上删除文件。我们先来看一下拷贝文件。
Copying Files To and From a Device
与设备交换数据最容易的方式之一就是简单地在设备与PC间拷贝一个文本或者XML文件。该操作的使用RAPI示例程序的界面如图一。文本和基于XML的文件可以在移动应用程序中作为存储应用程序数据或配制数据的简单方式。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><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:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></path><lock v:ext="edit" aspectratio="t"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 292.5pt; HEIGHT: 178.5pt" type="#_x0000_t75" alt=""><img src="/Develop/ArticleImages/27/27153/CSDN_Dev_Image_2004-4-231729200.gif" o:href="http://msdn.microsoft.com/library/en-us/dnroad/html/road0324200401.gif"><font face="宋体"></font></shape>
Figure 1. The Copy File tab of the RAPI demo program.
OpenNETCF.Desktop.Communication命名空间RAPI类提供了两个方法来拷贝文件——CopyFileToDevice 和 CopyFileFromDevice。这两个方法都将源文件作为第一个参数,而目的文件作为第二个参数。
BtnCopyPerform按钮的点击事件处理过程里演示了这些方法。究竟是CopyFileToDevice 或者 CopyFileFromDevice方法被调用,要依赖于用户通过用户界面上的Combo Box进行选择。
[VC#.NET]
private void btnCopyPerform_Click(object sender, System.EventArgs e)
{
// Perform the copy.
try
{
if ((txtCopySource.Text == "") || (txtCopyDestination.Text == ""))
{
MessageBox.Show("You must provide both a source and destination
file.",
"Missing File Information");
}
else
{
switch (cmbCopyDirection.Text)
{
case "":
MessageBox.Show("You must select a direction before initiating
the copy.",
"No Destination Selected");
break;
case "from desktop to device":
myrapi.CopyFileToDevice(txtCopySource.Text,
txtCopyDestination.Text);
MessageBox.Show("Your file has been copied.", "Copy Success");
break;
case "from device to desktop":
分享到:
相关推荐
C#是一种面向对象的编程语言,由微软公司开发,广泛应用于Windows桌面应用、游戏开发、Web应用以及移动应用等领域。在这个计算器项目中,C#用于定义类、方法、变量等程序结构。 2. **Windows Forms应用程序**: ...
C#是由微软公司开发的一种面向对象的编程语言,它被广泛用于构建Windows桌面应用、Web应用和移动应用。VS03是早期版本的Visual Studio IDE,尽管已经过时,但它仍然是学习C#编程的一个不错选择,因为其界面简洁,...
QT是一个跨平台的应用程序开发框架,广泛应用于桌面、移动和嵌入式设备。QT5.9.7是该框架的一个稳定版本,提供了丰富的库和工具,支持C++编程语言,使得开发者能够快速构建具有现代图形用户界面的应用。 此程序设计...
VB.NET是一种基于.NET Framework的编程语言,由微软公司开发,用于构建Windows桌面应用程序、Web应用程序以及移动设备的应用程序。在本项目中,“VB计算器项目,可以实现混合运算”指的是使用VB.NET编写的一个计算器...
它被广泛用于创建桌面、移动和嵌入式设备的应用程序。QT库提供了丰富的图形用户界面(GUI)组件,使得开发者可以轻松地构建美观且功能强大的应用。QT 5.12是该框架的一个稳定版本,支持Windows、Linux、macOS、...
Qt是一个跨平台的应用程序开发框架,它提供了丰富的GUI(图形用户界面)工具,使得开发者能够方便地创建桌面和移动设备上的应用程序。在这个例子中,我们可能会使用Qt的`QLineEdit`组件来接收用户输入的数学表达式。...
C#是一种广泛应用于开发桌面应用、游戏、移动应用以及Web服务的强大语言,由微软公司开发。四则运算,即加法、减法、乘法和除法,是基本数学运算,也是编程中的基础逻辑操作。在C#环境中实现四则运算,可以为初学者...
综上所述,“Java四则运算计算器”不仅是一款功能实用的工具,更是Java编程与GUI设计的综合实践案例,展现了Java语言在桌面应用开发领域的强大能力。通过对该项目的学习和分析,开发者不仅可以掌握Java基础语法和AWT...
Qt是一个跨平台的应用程序开发框架,广泛用于创建桌面、移动和嵌入式应用程序。对于初学者,Qt入门提供了丰富的资源和易于理解的API,使得开发人员能够快速上手。 首先,我们需要了解Qt的基本概念。Qt库包含了各种...
IDV 桌面虚拟化办公解决方案是一种智能桌面虚拟化技术,由 Intel 提出,采用集中存储、分布运算的架构,将虚拟桌面的运行放在终端本地,系统镜像统一存放在服务器端,配置并下发到终端机的硬盘上,终端通过虚拟机...
Java平台分为三个主要部分:Java Standard Edition (J2SE)、Java Enterprise Edition (J2EE) 和 Java Micro Edition (J2ME),分别用于桌面应用、企业级应用和服务端开发以及移动设备和嵌入式系统的开发。 在设计...
Qt是一个功能强大的C++库,广泛用于创建跨平台的桌面和移动应用程序。它提供了丰富的图形用户界面(GUI)组件,使得开发人员能够轻松地构建各种类型的应用程序,包括计算器。 首先,我们从标题"Qt实现的四则混合...
例如,程序可能会监听鼠标的移动事件,当鼠标移到桌面图标上方时,通过读取图标的元数据获取图标对应的程序信息。这些信息可能包括程序名称、版本、描述等,然后利用易语言的字符串处理函数格式化这些信息,最后以...
【大工运算机基础模拟试卷(A)】涵盖了运算机基础知识的多个方面,主要涉及运算机系统构成、硬件组件、操作系统功能、文件系统管理、Windows操作系统使用、Word文档操作、Excel公式、PowerPoint动画设置、进制转换、...
1. **Java编程语言**:Java是一种跨平台的面向对象的编程语言,广泛用于开发各种类型的应用程序,包括桌面应用、服务器端应用和移动应用。在本项目中,Java提供了必要的语法和类库来构建这个计算器。 2. **计算器...
在C#编程中,创建可移动控件是常见的需求,特别是在开发桌面应用程序时,例如Windows Forms或WPF。本文将详细讲解如何实现一个C#可移动控件,并探讨相关的关键知识点。 首先,我们需要理解控件的基本概念。在C#中,...
C#是一种面向对象的编程语言,虽然通常用于桌面和移动应用开发,但也可以用于51单片机的嵌入式开发,通过交叉编译工具将C#代码转换为适用于单片机的机器码。在C#中,我们可以创建函数来模拟计算器的各种操作,例如...
- **处理器性能**:相较于桌面计算机,移动设备的处理器运算能力较弱,可能会影响复杂应用的运行效率。 - **内存限制**:移动设备通常配备较小的内存,这限制了可以同时运行的应用数量和大小。 - **电池续航**:移动...
二是**公有云的拓展**,桌面云解决方案将支持IT资源托管和DaaS(Desktop as a Service)模式,适应企业从自建IT转向公有云托管的需求。 在销售策略上,桌面云作为企业云化战略的起点,因其易于理解和接受,具有高...
在本次实验中,主要目的是掌握两个核心知识点:一是学习如何使用ISIS软件,二是理解并实践集成运算放大器(简称运放)的基本应用。 一、ISIS软件使用 ISIS是一款广泛应用于电子电路设计的仿真软件,它能够帮助用户...