2

我正在开始一个新项目。它将在运行 Windows CE、Windows Mobile 6 的设备上运行,并且还将具有桌面版本。该软件将使用它自己的协议通过串口连接到一些设备。基本上它会:

  • 连接到设备
  • 发送和接收信息
  • 读写二进制文件

这些任务将在桌面设备和移动设备之间共享。我一直在搜索我需要的信息,但我仍然有一些疑问:

  1. 如果我创建了针对 Windows CE 设备的解决方案,它是否也适用于 Windows Mobile 6?
  2. 创建一个面向 Windows CE 的类库会给我在桌面版本中使用它带来什么麻烦?(当我添加对该类库的引用时,我的 VS 说我可能会遇到一些意想不到的结果)
  3. 是否可以在运行 Windows CE 4.2 的设备上安装 .NET CF 3.5?

谢谢!

4

3 回答 3

2
  1. 据我所知,Windows Mobile 6 与 Windows CE 5 兼容。我偶尔会在我的 Mobile 6 手机上部署我的 CE 4 应用程序而不会出现问题。

  2. 通常 CE 可执行文件和 DLL 在桌面上工作;到目前为止,我只看到它们在使用 P/Invokes 到 coredll.dll 时失败,这是桌面的 user32.dll 的 CE 等效项。

  3. 不知道,我的 CE 4 设备没有足够的存储空间来复制安装程序:P

于 2010-05-17T08:28:01.753 回答
1
  1. 也许。Windows Mobile 是在 Windows CE 上构建的,但它并不包含操作系统必须提供的所有功能。如果您使用 WinMo 没有的 CE 功能,则不会,它将无法工作。为 WinMo 创建应用程序也是如此——它可能会或可能不会在 Windows CE 下运行。
  2. CF 程序集是可重定向的,这意味着桌面框架至少可以尝试运行它们。它们会运行良好,直到您遇到无法使用 CE 特定内容的问题。比如P/Invoking coredll,使用SIP控件,使用MessageWindow类等等。如果你使用两个框架通用的类就可以了。
  3. 是的。你不能直接在设备上调试(好吧,你不应该能够,但通常你可以通过手动运行 corecon 来让它工作)但它会运行得很好(假设你有加载所需的所有操作系统组件无论如何,CF 运行时)。
于 2010-05-17T12:50:27.907 回答
0

我猜这个微软公告回答了你的最后一个问题——所以答案是 windows CE 4.2 支持 CF 3.5。

于 2010-05-17T05:49:43.810 回答