3

我目前正处于一个新项目的准备阶段,该项目将使用 .NET Compact Framework(我们将看到 2.0 或 3.5)开发,并将在定制的 Windows CE 6 硬件上运行。但是,有一件事我无法工作:

似乎只能使用物理设备或模拟器进行调试。但是当我刚刚从资源管理器启动应用程序时,它在我的桌面上愉快地运行(因为,当然,CF 安装在我的开发机器上。所以,实际的问题是:

如何使用在桌面 CF 框架上运行的应用程序在桌面系统上调试我的 .NET CF 应用程序?或者这是不可能的?如果是后者,我该怎么做?创建一个非CF项目进行调试?我知道我应该在设备上进行调试,这对于应用程序的后端来说是必不可少的,但是 GUI 可以在桌面上进行调试。由于它使用 OpenGL,它的运行速度比在模拟器中快得多(设备具有 OpenGL 加速)。

4

4 回答 4

5

按照 Daniel Moth 的指南设置“我的电脑”部署目标:

“飞蛾:部署到我的电脑”

然后选择它作为您的智能设备项目的部署目标并按 F5。尽量远离任何特定于平台的模块/方法等。

如果您是 Compact Framework 开发人员,Moth 先生的博客中有很多很棒的博客条目。

于 2009-05-12T16:12:16.650 回答
4

通常我会创建 2 个项目,一个用于桌面,一个用于 CF。桌面版本是只引用 CF .dlls 的桌面 exe(这很好)。显然,您需要将您的主应用程序推送到库中,并使您的实际 .exe 只是一个非常轻的包装器(但无论如何这是一个非常好的设计)

它实际上不是在 CF 上运行,而是在 FF 上运行,因此您可能会在不同的实现中注意到一些兼容性问题。

另一种选择是使用 Visual Studio 中的调试选项来“附加到进程”。这样,您可以通过双击运行应用程序,然后附加到该进程。

于 2009-03-20T15:45:01.923 回答
0

我知道您在调试 CF 应用程序时模拟器性能低下的意思。

不幸的是,我不认为这是开箱即用的。如果您注意到,VS 中的调试器总是会检查您连接的设备是什么,以确定是否应该部署您的应用程序,具体取决于您自上次部署以来是否有任何更改。

如果有人想在模拟器或设备以外的东西上进行调试,他们应该尝试在该列表中添加另一个“模拟器”,这可能不是典型的模拟器,而是桌面本身。不幸的是,我认为这是不可能的。

当然,我已准备好由在 CF 开发方面更有经验的人纠正。如果存在这种调试 CF 应用程序的技术,我会非常感兴趣!

于 2009-03-17T12:42:54.693 回答
-1

准备连接设备

  1. 使用与设备的任何连接,将以下文件复制到设备上的 \Windows\ 文件夹。这些文件默认位于开发计算机上的 \Program Files\Common Files\Microsoft Shared\CoreCon\1.0\Target\wce400\。Clientshutdown.exe ConmanClient2.exe CMaccept.exe eDbgTL.dll TcpConnectionA.dll
  2. 从设备上的命令提示符运行 conmanclient2.exe。
  3. 确定设备的 IP 地址。

准备 Visual Studio 进行连接

  1. 在 Visual Studio 工具菜单上,单击选项,然后单击设备工具,然后单击设备。
  2. 选择 Windows CE 设备,然后单击属性。
  3. 在传输框的右侧,单击配置。
  4. 在配置 TCP/IP 传输对话框中,选择使用特定 IP 地址,然后键入设备 IP 地址。

设置安全性并建立连接 1. 在设备的命令提示符处,运行 cMaccept.exe。

于 2013-06-07T13:17:15.447 回答