当前位置: 首页 > news >正文

桌面端的移动运算(二)

Working with the RAPI Class<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

为了简化RAPI类的操作,我将添加一个using声明到示例程序的C#版本,或添加一个Imports声明到VB.NET中,示例如下:



另外,我将添加一个单独的module-level变量,myrapi,用于保存一个RAPI类的实例。

Connecting to the Device

当你的桌面程序使用RAPI类时,第一步是要与设备建立一个连接。

注意:在桌面程序中使用RAPI必须要有一个PC与设备之间的激活的ActiveSync连接。

在这篇文章包含的示例程序中,在Form_Load事件中将连接到设备。为了连接到设备,你使用RAPI类的Connect方法。正如下面代码所演示的,我紧接着检查了RAPI类的DevicePresent属性,来校验连接是否成功。

在连接确定后,我们将准备来探索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进行选择。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • C语言使用技巧(二十八):回顾memcpy()函数用法
  • C语言使用技巧(二十九):回顾fopen,fwrite,fread,fseek,fclose,ftell,fputs,gets,rewind,fprintf函数用法
  • 桌面端的移动运算(三)
  • C语言使用技巧(三十):计算程序运行时间以及自带的函数库calcElapsed(startTime, now())
  • 桌面端的移动计算(四)
  • C/C++音频算法: noise suppression算法及技术资料汇总
  • 经济观察报:新浪打造网络新闻的工业化实验
  • AI模型设计:C++实现深度学习神经网络模型及源码分享
  • C语言使用技巧(三十一):回顾strlen函数简单使用
  • 导航界面
  • python使用技巧(二十七):音频WAV和PCM的互相转换
  • Java学习备忘录(一)安装篇(原创)
  • C语言使用技巧(三十二):读写txt文件指定行指定所有行类型数据
  • AI模型设计:安装C++版本的libtensorflow(1.10~2.6.0)以及TFC++ demo源码的实现
  • 酒店管理(链表和文件操作)
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • android 一些 utils
  • Go 语言编译器的 //go: 详解
  • iOS 系统授权开发
  • Java精华积累:初学者都应该搞懂的问题
  • Linux链接文件
  • php ci框架整合银盛支付
  • PHP面试之三:MySQL数据库
  • Protobuf3语言指南
  • Twitter赢在开放,三年创造奇迹
  • XForms - 更强大的Form
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 工程优化暨babel升级小记
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 回流、重绘及其优化
  • 漂亮刷新控件-iOS
  • 区块链分支循环
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 追踪解析 FutureTask 源码
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • ​业务双活的数据切换思路设计(下)
  • ‌分布式计算技术与复杂算法优化:‌现代数据处理的基石
  • # Swust 12th acm 邀请赛# [ A ] A+B problem [题解]
  • ### RabbitMQ五种工作模式:
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • (2)nginx 安装、启停
  • (arch)linux 转换文件编码格式
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (回溯) LeetCode 131. 分割回文串
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (三)Honghu Cloud云架构一定时调度平台
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET Framework 3.5安装教程
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)
  • .NET企业级应用架构设计系列之结尾篇
  • /usr/local/nginx/logs/nginx.pid failed (2: No such file or directory)
  • @Autowired多个相同类型bean装配问题