zoukankan      html  css  js  c++  java
  • [转载]pda 和pc 之间的文件操作(利用Microsoft ActiveSync同步文件数据)

    工作中需要实现pc和pda的文件同步。比说我,我用cs端设计好了一个xml文件。现在希望把它传到 pda的指定文件夹下。
    或者,我需要 获得pda里某个文件到我的pc上。在网上寻觅了n久,终于被我到了一组可用的api.叫做:
    “OpenNETCF Desktop Communication Library”

    OpenNETCF官方主页:http://www.opennetcf.com/
    在微软的msdn里有篇这样的文章。详细描述了使用过程。网址如下:
    http://msdn.microsoft.com/zh-cn/library/ms837846.aspx

    我们需要去下载这样的一个api。网址为:
    http://rapi.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29281#DownloadId=72961
    下载后的是个源代码,你重新编译下就可以用了,发布为release版本的dll.

    下面是我的操作过程描述:

    1,确保已经安装了 microsoft activesinc

    2.将pda通过usb接口连接到pc

    3.新建一个项目,引用OpenNETCF.Desktop.Communication.dll

    4.在类中使用,添加 using OpenNETCF.Desktop.Communication;
     //实例化一个类变量 
            RAPI _rapi = new RAPI();//远程api封装

            private void pdaToolStripMenuItem_Click(object sender, EventArgs e)
            {

                try
                {
                    ConnectPDA();
                    string localFileName = @"C:\Documents and Settings\yunfei\桌面\启动msdtc.bat";
                    string fileInpdaName = @"\\My Documents\msdtc.bat";
                    _rapi.CopyFileToDevice(localFileName, fileInpdaName);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }

            /// <summary>
            /// 连接pda
            /// </summary>
            private void ConnectPDA()
            {
                _rapi.Connect();
                while (!_rapi.DevicePresent)
                {
                    MessageBox.Show("请把设备和pc连接,并确保在连接前已经安装了Microsoft ActiveSync ");
                    _rapi.Connect();
                }
            }

    5.使用的pda中的路径如下:
    调查表(suervy)保存的路径:\\My Documents\SuervySystem\Suervy
    填写后的调查表(record)保存路径: \\My Documents\SuervySystem\Data

    附:更多RAPI的方法列表:

    Connect
     建立与设备的同步连接。
     
    CopyFileFromDevice
     将设备中的文件复制到 PC。
     
    CopyFileOnDevice
     将设备某个位置的文件复制到设备的另一新位置。
     
    CopyFileToDevice
     将 PC 中的文件复制到设备。
     
    CreateDeviceDirectory
     在设备中创建目录。
     
    CreateProcess
     启动设备中的应用程序。
     
    DeleteDeviceFile
     删除设备中的文件。
     
    DeviceFileExists
     检查设备中是否存在文件。
     
    Disconnect
     中断与设备的连接。
     
    EnumFiles
     提供与 FileName 参数提供的条件相匹配的 FileInformation 类数组列表。
     
    GetDeviceCapabilities
     检索设备的特定设备信息。
     
    GetDeviceFileAttributes
     检索特定设备文件的属性。
     
    GetDeviceFileSize
     检索设备文件的大小,以字节为单位。
     
    GetDeviceFileTime
     检索设备文件的日期时间。
     
    GetDeviceMemoryStatus
     检索设备的内存使用信息。
     
    GetDeviceSystemFolderPath
     检索到设备系统文件夹的路径。
     
    GetDeviceSystemInfo
     检索设备的系统详细信息。
     
    GetDeviceSystemPowerStatus
     检索设备的电源状态。
     
    GetDeviceVersion
     检索设备的操作系统版本。
     
    MoveDeviceFile
     将现有设备文件移到或重命名到一个新位置。
     
    RemoveDeviceDirectory
     删除设备中的目录。
     
    SetDeviceFileAttributes
     设置设备中文件的属性。
     
    SetDeviceFileTime
     设置设备中文件的日期时间。
     

  • 相关阅读:
    HttpModule &amp; HttpHandler
    试图运行项目时出错:无法启动调试 没有正确安装调试器
    DataTable 手动排序 无效的问题解决方法??
    合并多个DLL文件
    恢复mysql方法
    在不同版本的IIS下使用ASP.NET MVC
    Enterprise Library 4.1 October 2008
    去除HTML标记
    Mac相关命令
    Mac常用快捷键
  • 原文地址:https://www.cnblogs.com/vir56k/p/1536134.html
Copyright © 2011-2022 走看看