【问题标题】:How do you debug a Windows Universal App built with command line?如何调试使用命令行构建的 Windows 通用应用程序?
【发布时间】:2016-05-14 15:10:36
【问题描述】:

这对于 Win32 应用程序来说很容易,您只需使用 cl.exe 构建它并包含调试信息,然后您可以在 Visual Studio 中打开 .exe 并逐步执行代码。使用 .appx 分发的通用 Windows 平台 (UWP) 应用程序的等效项是什么?当我尝试在 Visual Studio 2015 中打开它的 .exe 时(在打包之前,或者在解压生成的 .appx 之后),我只会收到错误 0x8007006E,“系统无法打开指定的设备或文件”。

【问题讨论】:

  • 您可以附加到 Visual Studio 中的进程吗?
  • 正如 WiredPrairie 所说,为什么不通过单击行号左侧的灰色并单击本地机器(或 F5)来放置一些断点。当它到达代码时,将触发断点,您可以看到所有变量。

标签: debugging visual-studio-2015 win-universal-app uwp


【解决方案1】:

安装 APPX 后,您可以使用以下步骤从 VS 进行调试:

  1. 调试 --> 其他调试目标 --> 调试已安装的应用程序包

  1. 选择您要调试的应用程序

  1. 选择要调试的代码类型(托管/原生)

  2. 选中任何可选复选框(根据需要)

  3. 点击“开始”

谢谢,

Stefan Wick - Windows 开发者平台

【讨论】:

  • 这如何与 Visual Studio CMake 打开文件夹一起使用?由于缺少 MSVCP140D_APP.dll 和 VCRUNTIME140D_APP.dll,运行可执行文件失败。
  • 确保您在测试机器上安装了正确的依赖项。您可以在 %Program Files(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs 中找到这些包
  • 测试机是我的开发盒,我已经安装了Microsoft.VCLibsMicrosoft.VCLibs.Desktop (x64, Debug) appx 包,它仍然无法通过CMake Open Folder 运行。
  • 您如何尝试启动该应用程序?对于打包的应用程序,您不能只调用 EXE,您需要调用启动合约,或者声明一个 appExecutionAlias,然后您可以像 EXE 一样调用它。
  • @MarkIngram 我已就此与 VS 团队联系,他们已确认我们在 CMake 集成中尚不支持 UWP。因此,现在您必须使用我在回答中概述的“调试”菜单工作流程。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-09
  • 1970-01-01
相关资源
最近更新 更多