【问题标题】:VisualStudio 2017, Debug build is ok, but Release not work at allVisual Studio 2017,调试版本还可以,但发布根本不起作用
【发布时间】:2018-06-05 17:42:14
【问题描述】:

  • Visual Studio 2017
  • Windows 10 内部版本 10586.753
  • UwpDesktop 10.0.14393.3 由 NuGet 安装
  • WPF 应用程序

当构建为“调试”时,在调试中,所有“使用”工作正常然后编译成功。

但构建为“发布”,某些使用未启用。然后, 几乎方法make编译错误..

你有什么想法吗?

Update1:我试过了。但不工作...... :( 我创建了新项目并将 UwpDesktop 安装为“发布”模式。但结果是一样的。我的天啊 ! Entity Framework References go missing between debug and release build

Update2:我检查“Release”文件夹,它是空的。

“Debug”文件夹有很多UwpDesktop的DLL。 然后,我将除 Exe 之外的所有文件从 Debug 复制到 Release。 现在,我成功地在 Release 进行编译。

但是为什么? 这正常吗?

更新 3 现在,构建为“发布”是可能的,但下一个问题是安装程序。 “Visual Studio Installer”在发布编译时有同样的错误... : (

更新 4 错误信息是, 当我们在代码中输入错误或未知的类名时,这是正常的消息。在上图中,GattDeviceService 是未知的类名。

现在,情况转好。

( 1 ) 我将所有 DLL 文件从 Debug 文件夹复制到 Release 文件夹。所有 DLL 文件首先由 NuGet 放置。我想知道为什么 NuGut 没有将相同的 DLL 复制到 Release 文件夹。

( 2 ) 现在,“Visual Studio 安装程序”也运行良好。我试过很多。然后,我不记得我做了什么。第一个错误是缺少第一个问题的依赖项。将 DLL 文件复制到“Release”后,安装程序构建没有成功。

(2-1) 这是当前状态。 (见图)

(2-2) 如果我用“Visual Studio Installer”选择“项目输出”,构建失败,然后,我更改了“文件”而不是“项目输出”,我选择了所有 EXE、DLL、PDB、配置文件.如果我选择 xml、winmd、安装程序设置显示错误消息。那我就无视了。

现在,我解决了这个问题( Build with release 成功,Setup build with release :成功)

我希望它对某人有所帮助.. :)

【问题讨论】:

  • 在发布模式下编译应用时,您收到了哪些错误消息?如果发布文件夹中没有任何文件,请确保在项目属性中设置正确的输出路径,例如“bin\Release”。也请不要优化代码并在 Advanced Build Settings 窗口下设置调试信息=full。对于安装程序,您是使用单击一次还是其他方式创建安装项目?
  • 嗨,杰克。谢谢你。我添加了“更新 4”。现在我解决了这一切问题。但这对初学者来说并不容易。感谢您的评论。
  • 很高兴知道您已经解决了这个问题,如果可能的话,您能否将您的解决方案添加为单独回复的答案(不在您之前的问题或评论中)并将其标记为答案?因此,它可以帮助遇到相同问题的其他社区成员轻松找到答案。祝你有美好的一天:)
  • 这是解决此问题的简单步骤。 ( 1 ) 将所有DLL文件从“Debug”文件夹复制到“Release”。 (2)如果“this.InitializeComponent();”有错误,使用解决方案资源管理器删除项目并重新添加。 (3) 并且对于“Visual Studio Installer”,不要使用“Project output”来选择目标文件。使用“file”选择文件,不要选择“winmd”文件。完成!
  • 非常感谢您的分享:),但如果可能的话,您可以使用“发布您的答案”选项将其作为答案分享(而不是作为评论发布),这样您就可以标记它并帮助其他成员。真诚的:)

标签: wpf visual-studio nuget


【解决方案1】:

这是解决此问题的简单步骤。

  1. 将所有 DLL 文件从“Debug”文件夹复制到“Release”。

  2. 如果“this.InitializeComponent();”有错误,使用解决方案资源管理器删除项目并重新添加。

  3. 对于“Visual Studio 安装程序”,不要使用“项目输出”来选择目标文件。使用“file”选择文件,不要选择“winmd”文件。

【讨论】:

  • "将所有DLL文件从"Debug"文件夹复制到"Release"。听起来感觉很不对
猜你喜欢
  • 2017-07-23
  • 2021-07-28
  • 1970-01-01
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-29
  • 2018-08-02
相关资源
最近更新 更多