【问题标题】:VS 2017 Community: Change target for existing project to ARMVS 2017 社区:将现有项目的目标更改为 ARM
【发布时间】:2019-06-28 23:31:35
【问题描述】:

我正在尝试为 ARM 上的 Windows 10 IoT 重新打包现有桌面应用程序(特别是 Dragonboard 410c)。

我已经安装了 VS 2017 社区版 (15.9.6) 并且我有这个项目的桌面版本的源代码,虽然我不太了解它。

它目前针对 x86 / x64(两者都可以正常工作),但 ARM 选项不可用。

我是否需要在 VS 中添加一些组件,或者手动编辑一些内容才能为 ARM 编译?

当我将 Dragonboard 设置为远程目标时,不出所料地出现此错误:

“错误 DEP3308:部署目标 '192.168.1.119' 不支持针对 X86 平台的项目。支持的平台:ARM。”

很高兴在必要时提供更多信息。

谢谢, 回复

【问题讨论】:

  • 看起来像是一个开始,至少看看我是否安装了ARM编译器。即使我以 UWP 包为目标,这些步骤是否也适用?
  • 这适用于桌面程序。加载解决方案时打开配置管理器并为 ARM 创建新配置,但我认为转换后的桌面新娘应用程序无法在 IoT 上运行
  • 限制是什么?

标签: uwp visual-studio-2017 arm windows-10-iot-core dragonboard


【解决方案1】:

你应该在项目属性调试选项卡页面中将平台更改为ARM,然后将目标设备更改为远程机器,将身份验证模式更改为通用。

【讨论】:

  • 对,但是 ARM 在这里不是可用的选项。这就是问题所在。
【解决方案2】:

您的应用程序是桌面应用程序还是 UWP 应用程序?我从这个问题中得到了不同的信号。

官方不支持为 ARM 编译桌面应用程序(仅适用于 ARM64),对于 Windows 10 IoT,无论如何它必须是 UWP 应用程序。

此外,ARM 编译器通常不会默认安装,因此除非您在安装 Visual Studio 时手动选中这些框,否则您可能没有它。您可以重新运行安装程序来安装缺少的组件。

【讨论】:

  • 原始应用程序当前是桌面应用程序(即构建它会生成一个 EXE 文件)。我添加了 UWP Packaging 项目,如下所述:docs.microsoft.com/en-us/windows/uwp/porting/…
  • @flyingfishfinger,IoT Core 是一个以 UWP 为中心的操作系统,UWP 应用是其主要应用类型。可以参考这个document
  • 是的,我很清楚这一点。我猜这个问题是双重的:1)将桌面应用程序构建为 Win10 的 UWP。为此,我知道我可以添加打包项目 2)将生成的 UWP 定位于 ARM 架构,为此我不知道从哪里开始。该应用程序不是在 Windows 10 / Windows 10 上设计的,开发人员没有实施此计划的计划。他确实给了我保密协议下的源代码,所以我可以尝试打包一个 UWP 供我个人使用。我应该补充一点,我不是软件工程师,所以我希望这是调整编译器/目标/包选项的问题...
  • @flyingfishfinger,我想知道桌面应用是WinForm还是UWP应用? Windows IoT Core 仅支持 UWP 应用。此外,无需为 UWP 应用创建打包项目。您可以直接通过 Visual Studio 打包 UWP 应用,请参阅document
  • WinForm?我相信是这样。此代码使用 .NET 并生成在大多数当前 Windows 版本上运行的常规 .exe 输出文件。我想创建一个 UWP 版本,因为它不是由源代码按原样构建的。作者目前没有也可能不会为此来源构建 Windows 10 应用程序。
【解决方案3】:

如果您只想将项目部署在您的 x86 系统上(以防 ARM 平台不可用或无法为您配置),您可以按照下面的操作并像魔术一样使用它:

  1. 右键单击解决方案
  2. 选择配置管理器
  3. 将“活动解决方案平台”改为“X86”而不是“ARM”
  4. 确保“活动解决方案配置”设置为调试,并且启动项目已“部署 - 选中”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    • 2010-10-15
    • 2017-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多