通过ActiveSync从Windows Mobile设备提取文件

问题描述:

我想知道如何通过USB Sync将文件从我的手持设备移动到某个Windows文件夹。 EJ。通过ActiveSync从Windows Mobile设备提取文件

从\ MyDevice \ some.txt复制到C:\ Temp \ some.txt在C#或VB或C++中。

我是新开发的这个设备。有人可以帮我弄这个吗。

+0

什么样的设备? – SLaks 2012-08-03 21:08:26

+0

什么手持设备? Windows Mobile?苹果手机? Andriod的?为什么USB?为什么不通过Wi-Fi?或互联网?听说过Dropbox? – Ankush 2012-08-03 21:08:55

+0

该设备是一个Windows Mobile设备,并且在手持设备必须连接到PC的USB接口上,应该复制文件。 – koer 2012-08-03 21:14:31

我假设它是Windows Mobile设备;没有其他移动设备(现在)可以使用Visual C++。

你不能从设备端做到这一点;允许移动设备与主机的文件系统混乱将是一个巨大的安全风险。

从Windows端,当设备通过ActiveSync连接到PC时,可以使用RAPI功能CeCopyFile()CeCreateFile()/CeReadFile()。你也可以通过核心连接API来获取文件,但它要复杂得多。你将不得不使用CoreCon接口ICcConnection

RAPI头和库附带Windows Mobile SDK,几乎任何版本。

编辑:所以你需要它从设备端。没有内置的API。考虑ActiveSync。它具有自动同步主机文件夹和设备文件夹的界面;如果设备上的文件发生更改,则更改将自动提取到PC。如果您实施自定义项目界面,则可以在发生更改时通知ActiveSync。

想想这样。无法从主机无法合作推送文件是不可能的;你必须意识到这将是多么大的灾难,否则;任何拥有设备和USB电缆的人都可以通过插入设备来接管任意一台PC。但是,如果您正在从主机PC获得合作,那么您最好还是将Windows的RAPI程序放在一起轮询设备上的某个文件夹并提取文件。

或者你可以在PC上设置一个FTP服务器,就像ctacke建议的那样。

+0

意味着从掌上电脑无法移动这些文件,因为我必然会从设备中推送文件。 :'( – koer 2012-08-03 23:12:16

如果您需要从设备推送到PC,您必须在运行PC的服务器上接受请求和数据,例如FTP服务器。连接后,您将获得一个本地虚拟网络,解析“ppp_peer”将使您获得连接的PC。此时,您可以推送到本地Web服务,FTP或其他任何服务。然而,没有一些明确的服务,没有办法将它直接传输到文件系统,因为这将是一个巨大的安全漏洞。