UWP:记录一下这几天踩到的坑

原文: UWP:记录一下这几天踩到的坑

最近在玩微软的Desktop Bridge项目,遇到了如下几个坑:

1、文档中给的是js项目魔改的方法,其实C#项目也可以魔改加入UWP部分的,区别在于:

  • 不用在项目文件里写<AppxGeneratePrisForPortableLibrariesEnabled>false</AppxGeneratePrisForPortableLibrariesEnabled>
  • 只支持Release,Debug的话会报错

2、win32项目引用UWP的类库之后,注意区分有些方法是UWP的,需要CoreWindow的支持。比如使用C# wpf做desktop bridge的时候,调用了 UWP里的获取分辨率的方法,程序就会报错,但是因为都是用C#,命名空间也非常相似,还是要多加注意。

3、复制到uwp项目里的win32部分,一定要全部是 内容 复制 ,不然肯定爆炸,而且win32项目不要全部放到根目录,最好建一个文件夹放所有的win32资源。

4、一个神坑,部分win32项目,尤其是wpf项目引用的dll,放到uwp项目中之后,编译会报错,而且我没找到区分这些出问题的dll的方法。我的解决方法是一个一个的删,然后测,最后找到了几个依赖,然后用了其他方法实现。

5、神坑中的神坑。nuget包,Microsoft.NETCore.UniversalWindowsPlatform,版本5.4.X对应.net native1.7,6.0.X对应.net native2.0。

之前我一直用的5.4.X,生成的商店包中的upload,解压开是可以直接安装调试的,而6.0.X生成的商店包解压安装之后,会卡第一屏然后闪退。

外挂调试器提示KERNELBASE.dll出错,事件查看器是

错误应用程序名称: TestSapmple.exe,版本: 1.0.0.0,时间戳: 0x5aaa0663
错误模块名称: KERNELBASE.dll,版本: 10.0.17115.1,时间戳: 0xe1aad729
异常代码: 0xe0434352
错误偏移量: 0x0000000000017e98
错误进程 ID: 0x48d8
错误应用程序启动时间: 0x01d3bc2054d14484
错误应用程序路径: C:\Program Files\WindowsApps\XXX\TestSapmple.exe
错误模块路径: C:\WINDOWS\System32\KERNELBASE.dll
报告 ID: b98bd41a-5bf5-4ed8-8753-b5812a261580
错误程序包全名: XXX
错误程序包相对应用程序 ID: App

应用程序: TestSapmple.exe
Framework 版本: v4.0.30319
说明: 由于未经处理的异常,进程终止。
异常信息: 异常代码为 e06d7363,异常地址为 00007FFA9E357E98
堆栈:

 

我把VS重装几次,甚至都想重装系统的时候,突然问了问别的大佬,发现大家都是这种状况,才知道这是正常的。而微软的文档只说让测试生成的Test文件夹下的appx包,并没有提到appload文件怎么怎么样。所以我把这个坑在这里记录一下,希望下一个遇到这个坑的人能看到。

posted on 2018-05-26 23:38 NET未来之路 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/9094776.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值