我有一个UWP应用程序,它将FCU作为最小版本和目标版本.当我调试一切都很好.当我在发布模式下编译时.但是,当我激活.net本机编译应用程序崩溃时,在日志中显示此消息:
The program '[19396] MoneyFox.UWP.exe' has exited with code -1073741511 (0xc0000139) 'Entry Point Not Found'. Activation of the Windows Store app '57598ApplySolutionsSoftwa.MoneyFoxBeta_de8w9y82qfkbg!App' failed with error 'The app didn't start'.
我安装了Microsoft.NETCore.UniversalWindowsPlatform 6.0.2,它使用.net native 2.0.
我还创建了一个新的Blank UWP应用程序,并添加了对我的核心项目的引用.一旦我添加了对MoneyFox.Business的引用,应用程序就无法再启动并崩溃上面的消息.
那是什么,或者我怎么调试它?
编辑:我做了一些进一步的研究.我检查了最后一个稳定版本,并将应用程序的目标和最小版本更新为FCU.一旦完成,就会出现同样的错误.所以它似乎与新的SDK有关.
编辑2:我回到了旧版本的代码,并走上了新版本的sdk和Microsoft.NETCore.UniversalWindowsPlatform.
只要我使用Microsoft.NETCore.UniversalWindowsPlatform 5.3.4它就可以正常工作.但是当我更新到版本6.0.2并使用.net native激活时,我会在启动时直接获得此异常:
Unhandled exception at 0x0F497A4C (mrt100_app.dll) in MoneyFox.Windows.exe: 0xC0000005: Access violation reading location 0x01189884.
只要未激活.net本机,它就可以在调试和发布中工作.
我尝试根据这篇文章调试它:https://blogs.msdn.microsoft.com/devops/2015/07/29/debugging-net-native-windows-universal-apps/
但消息是一样的.我在这里查看了已知问题:https://github.com/dotnet/core/blob/master/Documentation/ilcRepro.md
基于此,我尝试禁用SharedLibrary功能.之后我收到以下错误:
The program '[16184] MoneyFox.Windows.exe' has exited with code -1073741511 (0xc0000139) 'Entry Point Not Found'. Activation of the Windows Store app '57598ApplySolutionsSoftwa.MoneyFoxBeta_de8w9y82qfkbg!App' failed with error 'The app didn't start'.
我创建了一个.net本地仓库.但由于编译得很好,我不知道这是否有用.万一它有帮助:https://1drv.ms/u/s!An3D30bKDOhpuooBKHoAlhCaz_8XQ
我还创建了一个新分支:https://github.com/NPadrutt/MoneyFox.Windows/tree/FCU.