0

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

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

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

4

2 回答 2

2

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

您无法从设备端执行此操作;允许移动设备干扰主机的文件系统将是一个巨大的安全风险。

在 Windows 端,您可以使用 RAPI 功能,CeCopyFile()或者CeCreateFile()/CeReadFile()当设备通过 ActiveSync 连接到 PC 时。您也可以通过 Core Connectivity API 拉取文件,但这要复杂得多;你必须使用 CoreCon 接口ICcConnection

RAPI 标头和库随 Windows Mobile SDK 一起提供,几乎任何版本。

编辑:所以你需要从设备端。没有内置的 API。考虑 ActiveSync。它有一个用于自动将主机文件夹与设备文件夹同步的界面;如果设备上的文件发生更改,更改将自动拉取到 PC。如果您实现自定义项接口,您可以在发生更改时通知 ActiveSync。

这样想吧。在没有主机PC主动配合的情况下推送文件是不可能的;你必须意识到否则会有多大的灾难;任何拥有设备和 USB 电缆的人都可以通过插入设备来接管任意 PC。但是,如果您正在努力获得主机 PC 的合作,您不妨为 Windows 编写一个 RAPI 程序轮询设备上的某个文件夹并提取文件。

或者,您可以像 ctacke 建议的那样在主机 PC 上设置 FTP 服务器。

于 2012-08-03T21:20:05.190 回答
1

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

于 2012-08-04T03:41:28.397 回答