在发布模式下构建uwp应用程序时出错

问题描述 投票:1回答:1

我有这个应用程序,在我的本地计算机和我的Windows Phone设备上,在调试模式下成功构建和运行,在尝试使用发布模式时,我得到以下3个错误:

错误内部编译器错误:发生一个或多个错误。

非泛型类型'PInvoke.NTSTATUS.Code__PInvoke_Windows_Core'不能与类型参数一起使用... obj \\ x64 \\ Release \\ ilc \\ intermediate \\ Liberte.Windows.Interop \\ SafeTypes.g.cs 333

找不到类型或名称空间名称'Value'(是否缺少using指令或程序集引用?)... obj \\ x64 \\ Release \\ ilc \\ intermediate \\ Liberte.Windows.Interop \\ SafeTypes.g.cs 333

检测到最后两个错误的实际代码是名为SafeTypes.g.cs的文件下的自动生成代码,并且引发错误的行是:

namespace PInvoke
{
    [global::System.Runtime.InteropServices.McgRedirectedType("PInvoke.NTSTATUS,PInvoke.Windows.Core, Version=0.1.0.0, Culture=neutral, PublicKeyToken=9e300f9f87f04a7a")]
    public unsafe partial struct NTSTATUS__PInvoke_Windows_Core
    {
        public global::PInvoke.NTSTATUS.Code__PInvoke_Windows_Core <Value>k__BackingField;
    }
}

我不知道这是什么意思,也不知道该怎么做,对此没有任何解释和解决方案?

更新:

尝试关闭VS,然后删除Obj和Bin内容,再次重建,但stuill有相同的错误。

我应该提到的是,我已经参考了另外两个项目,其中一个是使用PCLCrypto库的PCL项目,另一个是使用带有sqlight的EntityFramework 7预发行版本的通用应用程序库。

更新2:

我试图用.Net native禁用编译只是为了看看发生了什么,发布版本成功,但是应用程序在启动后崩溃并退出。

更新3:

我刚刚发现我在所引用的两个项目之一中使用的PCLCrypto库引用了导致问题的两个库,并且在上面的错误中提到了它们,我在尝试卸载该库时发现了这一点看看是否是问题的原因:

在此输入图像描述

我试图回滚到以前的稳定版本,在调试模式下编译,一切都很完美,当我再次尝试使用.Net native的发布模式时,我遇到了一个新问题Out of memory

c# build visual-studio-2015 win-universal-app release
1个回答
0
投票

关于更新3 ,它似乎是.NET Native tool chain一个错误,我在PCLCrypto repo上打开了一个问题 ,该问题移至 corert repo

© www.soinside.com 2019 - 2024. All rights reserved.