最近在玩微软的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文件怎么怎么样。所以我把这个坑在这里记录一下,希望下一个遇到这个坑的人能看到。

UWP:记录一下这几天踩到的坑的更多相关文章

  1. 记录初学者学习Hive时踩过的坑

    1. 缺少MySQL驱动包 1.1 问题描述 Caused by: org.datanucleus.store.rdbms.connectionpool.DatastoreDriverNotFound ...

  2. wrk 使用记录及踩过的坑

    wrk是什么?https://github.com/wg/wrk wrk 是一个非常小巧高效的开源性能测试工具,支持lua脚本来创建复杂的测试场景.wrk 的一个很好的特性就是能用很少的线程压出很大的 ...

  3. 记录使用git submodule时踩的坑

    在使用git子模块的时候踩了一个坑 在使用git submodule updata --init --recursive命令,即递归更新子模块并初始化时碰到了一个问题: 经过一段不短时间的排查,发现问 ...

  4. "开发路上踩过的坑要一个个填起来————持续更新······(7月30日)"

    欢迎转载,请注明出处! https://gii16.github.io/learnmore/2016/07/29/problem.html 踩过的坑及解决方案记录在此篇博文中! 个人理解,如有偏颇,欢 ...

  5. CentOS7.2上用KVM安装虚拟机window10踩过的坑

    最近两个星期一直在琢磨kvm安装window10操作系统,并且通过桥接模式与外界通信,经历了九九八十一难,终于搞定.下面就记录以下我们在探索的过程中踩过的坑. 安装KVM 1. 系统要求:需要一台可以 ...

  6. [问题解决]RedHat7更换CentOS7的yum源时踩过的坑

    更换yum源的流程 查看当前yum程序 $ rpm -qa|grep yum 这里推荐将其结果截屏或拷贝出来,以免后面报错修复. 删除原有yum源 $ rpm -aq | grep yum|xargs ...

  7. 小程序——微信小程序初学踩过的坑

    微信小程序初学踩过的坑 一.前言     最近因为某些需要和个人兴趣打算开发一下微信小程序,经过在官方网站上的基本了解,我大体知道了微信小程序开发的大致过程,其实最本质的就是MVVM,借用了很多模式上 ...

  8. idea 关于高亮显示与选中字符串相同的内容踩过的坑

    由 Eclipse 切换到 idea 遇到了很多不熟的地方和踩过的坑,下面记录 idea 关于高亮显示与选中字符串相同的内容踩过的坑. IDEA 2017.2.1 版本修改 Identifier un ...

  9. vue项目开发中踩过的坑

    一.路由 这两天移动端的同事在研究vue,跟我说看着我的项目做的,子路由访问的时候是空白的,我第一反应是,不会模块没加载进来吧,还是....此处省略一千字... 废话不多说上代码 路由代码 { pat ...

随机推荐

  1. APACHE服务器出现No input file specified.解决方案

    thinkcmf程序默认的.htaccess里面的规则: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_F ...

  2. jq模仿雨滴下落的动画

    效果如图: 实现思路:定时器每隔x秒生成宽高.下落速度(即动画执行时间).left随机的div. 1.CSS: body{ overflow: hidden;/*这是为了防止出现滚动条*/ } .co ...

  3. Halcon一日一练:图像拼接技术2:步骤与例程

    上一篇主要介绍了图像拼接的一些原理和方法,这一篇将主要介绍步骤和例程: 接上一篇: 基于特征的接拼方法,分为四个步骤 1.特征检测:从图像中检测出显著且独特的图像特征,诸如:闭合区域,直线段,边缘,轮 ...

  4. Linux 小记 — 网络管理

    前言 前段时间需要配置一台私网 ECS 联外网,阿里云比较推荐的方案是创建一个 Nat 网关并绑定 EIP, 以此来统一所有 ECS 的网络出口.由于我已经拥有一台外网 ECS(不想多掏钱,且我自己的 ...

  5. PAT 1003. Emergency 单源最短路

    思路:定义表示到达i的最短路径数量,表示到达i的最短径,表示最短路径到达i的最多人数,表示从i到j的距离, 表示i点的人数.每次从u去更新某个节点v的时候,考虑两种情况: 1.,说明到达v新的最短路径 ...

  6. Spring data mongodb ObjectId ,根据id日期条件查询,省略@CreatedDate注解

    先看看ObjectId 的json 结构,非常丰富,这里有唯一机器码,日期,时间戳等等,所以强烈建议ID 使用 ObjectId 类型,并且自带索引 Spring data mongodb 注解 @C ...

  7. Socket 参数笔记

    //服务端@RunWith(JUnit4.class) public class ServerSocketTest { @Test public void testServer() throws IO ...

  8. 【推荐】开源项目minapp-重新定义微信小程序的开发

    minapp 重新定义微信小程序的开发 官网:https://qiu8310.github.io/minapp/ 作者:Mora minapp 重新定义微信小程序的开发 使用 用 npm 安装命令行工 ...

  9. MySQL架构篇(一)

    MySQL复制解决了什么问题? 1.实现在不同服务器上的数据分布 2.利用二进制日志增量进行 3.不需要太多的带宽 4.但是使用基于行的复制在进行大批量的更改时会对带宽带来一定的压力,特别是跨IDC环 ...

  10. sys.argv[]用法-转载

    sys.argv变量是一个字符串的列表.特别地,sys.argv包含了命令行参数 的列表,即使用命令行传递给你的程序的参数. 这里,当我们执行python using_sys.py we are ar ...