3

我有一个在服务器上运行的 C# 应用程序,它需要将文件复制到多个 Windows Mobile 5.0 设备。这些设备通过支持以太网的底座直接连接到网络(因此它们不通过 ActiveSync 连接到 PC)。

这样做我有什么不同的选择?我知道 RAPI 可以做到这一点,但我不确定它是否可以像这样直接通过网络复制一些东西。另外,我知道 RAPI 使用 ActiveSync DLL,因此需要安装 ActiveSync,如果可能,我们希望避免这样做。

WMI 有可能吗?File.IO如果我们能以某种方式获取每个设备的 IP 地址,我们可以使用普通的吗?代码示例或一般知识将是最受欢迎的。

4

1 回答 1

1

普通文件 I/O 无法正常工作。这些设备没有文件共享操作系统组件,因此您不能像使用 PC 一样通过网络“浏览”它们。

RAPI 确实使用 ActiveSync,因此您不仅必须安装 AS,还必须主动连接设备,并且 ActiveSync 一次只允许连接一个设备,因此无法满足您的要求。

我对这种场景的解决方案一直都是一样的。您必须在设备上安装某种“监听器”,无论是您部署的应用程序还是某种形式的安装程序。有时我在插入的 CF/SD 卡上使用自动运行应用程序(完全取决于您的拓扑)。

我通常让该应用程序监听来自 PC 的“发现”数据包的 UDP 广播。当他们收到它时,他们依次通过 UDP 广播出他们的 IP 地址,然后 PC 收集这些地址。然后,PC 通过侦听器应用程序通过 TCP 套接字将文件发送到设备。

最近,我一直在通过托管在 Padarn 中的 REST 服务来完成所有设备端的工作,以最大限度地减少我必须编写的设备上的通信代码量,但你可以使用 Udp/TcpClients 轻松完成所有工作。

于 2010-04-08T15:48:44.893 回答