4

我在 WindowsCE 5.0 设备上使用 CompactFramework 3.5 来构建一个应用程序,该应用程序应该使用主动同步的连接来获取一些数据。

我如何检测移动设备是否在通讯座中并具有活动连接?是否有某种 PInvoke 调用?

4

2 回答 2

3

取决于您要检测连接的哪一侧。对于桌面端,您可以连接一些 ActiveSync 事件。免费的开源桌面通信库可以为您提供这些。

对于设备,有几种方法。对于 WinMo,这很容易 - 您可以通过Microsoft.WindowsMo​​bile.Status 类点击来使用状态和通知代理。

对于通用 CE 设备,您可以使用 NOTIFICATION_EVENT_RS232_DETECTED 标志 P/Invoke CeRunAppAtEvent(它可以设置事件,而不仅仅是运行应用程序)。这些 API 也包含在 OpenNETCF 的智能设备框架中,特别是在DeviceManagement.SerialDeviceDetected 事件中

于 2009-02-12T16:32:15.460 回答
-1

您还可以使用以下方法检测通讯座:

get
{
  return SystemState.GetValue(SystemProperty.CradlePresent).Equals(1);
}

那么好吧

get
        {
            return  (int)SystemState.GetValue(SystemProperty.ConnectionsDesktopCount) > 0;
        }
于 2016-01-26T13:57:28.787 回答