【问题标题】:Can a UWP project include a desktop exe without a packaging project?UWP 项目可以包含没有打包项目的桌面 exe 吗?
【发布时间】:2018-04-29 11:25:40
【问题描述】:

this answer 中,有人告诉我,我需要一个打包项目来将桌面 exe 添加到 UWP 应用程序(通过桌面扩展程序使用)。

但是,打包项目非常轻量级,没有太多内容。所以我想知道我是否可以将打包项目中的任何相关代码插入到 UWP 应用程序中(并且不使用打包项目),而不是将所有 UWP 内容迁移到打包项目中。这也将使一切变得更简单,因此现在和将来更不容易出错。

我试过一次。我添加了额外的TargetDeviceFamily。它被商店接受,只是后来被告知发现了错误。 (应用程序在启动时崩溃。)

【问题讨论】:

    标签: c# uwp windows-store-apps win-universal-app


    【解决方案1】:

    如果您想手动执行此操作,可以完成。在您的特定情况下(据我从另一个线程中了解),您只需将其添加到 Package.appxmanifest:

      <build:Metadata>
        <build:Item Name="Microsoft.Build.DesktopBridge.Tasks.dll" Version="4.6.27406.0" />
      </build:Metadata>
    

    这样,应用商店将假定它已与子文件夹中的桌面二进制文件和根目录中的 UWP 二进制文件正确打包 - 因此它们可以成为 .NET 本机编译的进程。

    但是,为了未来的可持续性,我建议使用打包项目来创建商店上传包。

    【讨论】:

    • 谢谢。但我试过了,但失败了。虽然现在我在想 - 也许它必须不再在一个文件夹下? (我在嵌套文件夹中尝试过。)也可能是 .net 版本太低(它是 4.6,也许我应该尝试更高版本,尽管 4.6 对于所有 Windows 10 版本都足够了。)
    • 只是为了验证,您的意思是添加以下行:&lt;TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14393.0" MaxVersionTested="10.0.14393.0" /&gt;。对吗?
    • 抱歉,我的粘贴失败了。查看更新的答案我的意思。
    • 谢谢!我已经在寻找一种使用延迟剪贴板使用的不同方法(这也会使应用程序变得非常简单)但是 simply does not work according to the docs 所以这不起作用。
    • 我说得太早了。 Namespace prefix 'build' is not defined..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-17
    • 1970-01-01
    • 2014-06-08
    • 2020-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多