我正在使用Visual Studio 2015社区,c#和XAML开发Windows 10商店Windows Universal应用程序.它正在解压缩压缩文件并显示其中的图像.
构建提供0警告.
无论输入文件大小如何,调试版本都运行良好.
发布版本运行正常,具有典型的输入文件大小.
对于大输入文件大小(~100万像素图像),发布版本与appname.exe中的0x55E9A305(Windows.UI.Xaml.dll)处的未处理异常一致崩溃:0xC000027B:发生了应用程序内部异常(参数: 0x127DC468,0x00000005).'
当用户尝试显示第二个图像时发生崩溃.所有解压缩都已完成,此时已创建所有位图.
我已经摆弄了Build设置,并将差异缩小到"使用.NET Native Tool链编译"选项.如果选中该选项,则应用程序崩溃.如果未选中该选项,则应用程序运行正常.
总而言之,应用程序正在使用大约400 MB的堆,所以虽然不小但它并不接近机器的容量.
"所以取消选中!",我听到你哭了.取消选中此框会导致认证失败,如下所示:
FAILED
Supported APIs
• Error Found: The supported APIs test detected the following errors:
-API OpenSemaphore in api-ms-win-core-synch-l1-1-0.dll is not supported for this application type. System.Threading.dll calls this API.
-API CreateSemaphore in api-ms-win-core-kernel32-legacy-l1-1-0.dll is not supported for this application type. System.Threading.dll calls this API.
-API ExecuteAssembly in uwphost.dll is not supported for this application type. StupidTest.exe calls this API.
-API DllGetActivationFactory in uwphost.dll is not supported for this application type. StupidTest.exe has an export that forwards to this API.
Run Code Online (Sandbox Code Playgroud)
如果未选择"编译.Net Native"工具链,则空项目会遇到相同的故障.
所以我的问题:
通用应用必须使用Compile .Net Native工具链吗?
是否有关于内部异常中参数含义的文档或我可以转向其他地方进行故障排除的文档?
简而言之,任何关于如果选择"它不起作用,如果被选中,但你必须选择它以获得认证"的任何建议,我发现自己陷入困境?
这几天我也被这个问题困扰了,现在找到了答案!
因此,如果您尚未将 Visual Studio 2015 更新到 Update 1,请执行此操作。因为此错误是编译器中的错误,更新后您将能够使用选择的编译 .Net Native 工具链选项来构建项目。
是的,WACK 工具发现的这四个错误是由于在编译项目时未检查 Package.appxmanifest 文件的“构建”菜单中的 .Net Native 工具链选项造成的。