如何在不使用vcproj的情况下直接调试wince exe

时间:2011-08-02 05:10:55

标签: debugging windows-ce

我想谦虚地问:如何使用Visual Studio的调试工具调试存储在wince设备上的wince可执行文件(.exe)。

众所周知,使用VS2005,我们可以创建一个Win32智能设备项目(.vcproj),将我们的源文件添加到它,编译,选择一个目标设备,然后按F5,然后生成的exe将被部署到wince设备并连接到VS2005 wince调试器。但是我真的很想知道,如果有人在他的wince设备中有一个wince exe(称之为股票)并且拥有与该exe相对应的源代码,我如何开始直接调试该股票exe而不编译源代码?我无法编译源代码,因为我遗漏了一些库源或其他原因。

对于PC程序,我知道我可以打开一个exe作为项目,以便开始调试该exe。我可以找到main()函数并在其第一个语句上设置一个断点,然后F5将在该断点处停止。

提前谢谢。

3 个答案:

答案 0 :(得分:1)

如果要调试.NET CF托管应用程序,则以下链接应该有所帮助:
http://msdn.microsoft.com/en-us/library/b1ksfbk7%28VS.80%29.aspx

我只使用托管的.NET CF,但我发现这个链接有很多关于如何在VS2005中的Windows Mobile 5上调试托管代码和本机代码的好东西。其中大部分内容也适用于Win CE:
http://msdn.microsoft.com/en-us/library/aa446524.aspx

答案 1 :(得分:1)

我经常遇到这个问题;我希望创建的“exe项目”允许将调试器更改为“智能设备本机调试器”(或以某种方式设置平台) - >如果有人知道该怎么做,请告诉我。

我能够解决这个问题的两种方法是:

  1. 新项目方法:

    • 创建一个没有源代码的空“智能设备”项目。
    • 将“配置属性>调试>远程可执行文件”更改为您放在设备上的“Stock EXE”,即:\ FlashDisk \ MyApp.exe
    • F5进行调试,选择“是”时会显示“部署错误,是否继续”。
  2. 附加到流程方法:

    • 与上面相同,但是,不是编辑“远程可执行文件”,而是通过rapistart.exe /通过屏幕手动运行来启动“Stock EXE”。然后确保“附加到处理”传输设置为“智能设备”,您应该能够附加。
  3. 在此之后你需要手动加载pdb,选择src文件等,就像普通的PC应用程序一样。

答案 2 :(得分:0)

经过大量的阅读和实验后,我最近发现了这个方法(微软没有明确记录这么多棘手的问题)。 user2093823对程序进行了总结。

一些历史截图:

enter image description here enter image description here