一个月前微软发布了桌面应用程序转换器(Desktop Application Converter),让我们可以把现有的桌面应用程序(.NET 4.6.1 或 Win32)轻松转换成 通用 Windows 平台 (UWP) 的程序。

这实际上为开发者带来了巨大的机会。目前已经看到许多开发商主动开始这个过程并成功转换,发布到了 Windows 应用商店。 有些应用只需要少量或者不需要做代码修改,最快的一周就可以把自己的桌面应用程序带到Windows 10 应用商店里面。目前有超过3 亿 5000 万的设备正在运行 Windows 10,这种转换为有价值的桌面应用程序提供了前所未有的易于展现和购买的渠道。

不过,在这个过程中,我也注意到有两个常见的问题︰

A. 我成功转换此应用程序,它运行得相当好,但似乎没有办法直接发布到 Windows 商店?

B. 真是太酷了! 但是转换需要下载很大的image (3.5GB+) 和安装特定环境,我还没空尝试。。。。.

当然也有其他的问题,比如一些细节的准备工作,如何添加一些代码来在传统桌面程序里面使用 UWP API,有其它参考链接对此做了详细解释,在这里我主要回答上面两个问题:

关于问题 A,当决定转换并通过Windows应用商店发布自己的桌面应用程序时(不管会不会转换)都可以通过微软官方链接提交请求 (这个表格目前还是英文,但不难理解, 在提交的时候请注明来自国家地区,并附上本文博客链接)︰

https://developer.microsoft.com/en-us/windows/projects/campaigns/desktop-bridge

微软应用咨询团队(包括我在内)将帮助这个过程,包括解决转换中的技术问题,创建一个用来发布应用程序的特定开发者帐户。我们需要在这里特定开发者帐户,是因为转换后的应用程序,需要"runFullTrust",这就是转换后的程序不能直接将其发布的原因。

关于 B 的问题,我开发创建了"Desktop Bridge Online" 的Azure 服务,它可以帮助开发人员上传和转换的应用程序(写了个调用DAC的 windows 服务) 在线快速 (几个点击和文件名输入)︰

https://bridge10.azurewebsites.net

这项服务可能没有涵盖所有极端复杂的安装转换场景,但会满足大多数转换需求。

结果将是一个 zip 文件包含转换后的Appx程序包、测试证书和 程序包的分析文件。目前的应用程序安装程序文件大小仅限于 500 MB。如果您的安装程序超过上面的文件大小,鼓励安装本地转换环境。这里是主要的用户界面︰

转换选项如下所示参数的含义参考 https://msdn.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-run-desktop-app-converter

希望上面的信息和新的在线工具可以让我们更好地协助需要转换桌面应用程序的开发人员。任何反馈随时让我知道。

来自Windows 应用程序咨询团队其它有益的参考:

https://blogs.msdn.microsoft.com/appconsult/2016/10/13/desktop-bridge-the-bridge-between-win32-apps-and-the-universal-windows-platform/

https://blogs.msdn.microsoft.com/appconsult/2016/10/17/desktop-bridge-converting-an-installer/

Thanks!

Freist Li

行动起来:转换传统桌面应用程序到UWP 并发布到Windows 应用商店!的更多相关文章

  1. Rafy 领域实体框架示例(1) - 转换传统三层应用程序

    Rafy 领域实体框架发布后,虽然有帮助文档,许多朋友还是反映学习起来比较复杂,希望能开发一个示例程序,展示如何使用 Rafy 领域实体框架所以,本文通过使用 Rafy 领域实体框架来改造一个传统的三 ...

  2. 突破短板,传统桌面程序 使用webapi 扩展迎合web和移动端融合的需求

    传统桌面程序不能完全被web和移动端替代,但是需要改造.这里要说的是巧用webapi把以前用dll和com组件,ocx等方式做接口,做分布式开发的方式,改成restful 风格api的方式实现跨平台, ...

  3. 适用于Windows桌面应用程序的.NET Core 3

    介绍 9月,微软发布了新版.NET Core,用于构建Windows桌面应用程序,包括WPF和Windows Forms.从那时起开发人员可以将传统的nfx桌面应用程序(和控件库)迁移到.NET Co ...

  4. c#实现windows远程桌面连接程序

    c#实现windows远程桌面连接程序 使用winform制作windows远程桌面连接程序,windows自带了远程桌面连接,我们需要将远程桌面连接集成 到自己的winform程序,并实现管理远程主 ...

  5. c#实现windows远程桌面连接程序代码

    使用winform制作windows远程桌面连接程序,windows自带了远程桌面连接,我们需要将远程桌面连接集成 到自己的winform程序,并实现管理远程主机的配置. 远程桌面核心类库 windo ...

  6. Visual C++ Windows 桌面应用程序样例(摘抄)

    //================================== //Windows应用程序框架结构(例子) //参考:<Visual C++宝典>陈国建等编著 //======= ...

  7. 杂项-桌面应用程序:Windows Live Writer(WLW)

    ylbtech-杂项-桌面应用程序:Windows Live Writer(WLW) Windowslive Writer 即(WLW) 是一个免费的桌面应用程序,您可以使用它轻松发布丰富的内容到您的 ...

  8. electron之Windows下使用 html js css 开发桌面应用程序

    1.atom/electron github: https://github.com/atom/electron 中文文档: https://github.com/atom/electron/tree ...

  9. PHP-GTK 扩展(用PHP编写桌面应用程序)

    PHP能做什么? PHP-GTK (构建桌面应用程序在PHP中使用PHP-GTK) 普及一下知识php如何做桌面客户端 [PHP技术]PHP开发Windows桌面应用程序实例 实战PHP/GTK 哪位 ...

随机推荐

  1. 相当精简的CentOS个人桌面版--从CentOS6.3 32b-mini版開始(mini版过程略)

    利用网络实现相当精简的CentOS个人桌面版--从CentOS6.3 32位mini版開始(mini版过程略).升级后即是CENTOS6.5. 特别感谢163网易的镜像空间[http://mirror ...

  2. 打造atom成为golang开发神器

    在我在Windows系统上开发的日子里.我使用IDE开发数年之久.比如Visual Basic IDE, Borland Delphi IDE, Visual C++ 和最后的Visual Studi ...

  3. C++对象模型——Template中的名称决议方式 (第七章)

    Template中的名称决议方式 (Name Resolution within a Template) 必须可以区分下面两种意义,一种是C++ Standard所谓的"sope of th ...

  4. C/C++ 答疑解问

    1. sizeof(string)的大小 string属于类,类的大小就是类中成员变量(非静态)加上指向虚函数表的指针以及指向虚基类表的指针加起来的和.因为string是一个模板类,受具体的实现来决定 ...

  5. ubuntu安装ruby,安装sass,安装compass

    安装ruby apt-get install ruby. 默认会安装1.9的. 不是自己想要的. 可以进行下面的处理. # sudo apt-get install python-software-p ...

  6. 乐视云监控数据存放到influxdb中

    3.9     监控.告警系统 监控报警我们分PaaS平台和业务应用两大类. PaaS平台主要聚焦在基础设施和LeEngine的各个服务组件的监控报警(比如主机CPU,内存,IO,磁盘空间,LeEng ...

  7. POJ 1273 Drainage Ditches 最大流

    这道题用dinic会超时 用E_K就没问题 注意输入数据有重边.POJ1273 dinic的复杂度为O(N*N*M)E_K的复杂度为O(N*M*M)对于这道题,复杂度是相同的. 然而dinic主要依靠 ...

  8. centos6.4 ssh免密码登陆(只需三个步骤)

    学习Hadoop的时候,用到的.这里作为记录. 以下是最简洁的方式: 4台虚拟机: 用户:root.hadoop hostname 分别是:Master.Hadoop.Slave1.Hadoop.Sl ...

  9. Android SDK Manager 无法更新问题(转载)

    先看看如何加快更新速度,再说如何更新. 首先更新host文件,如图,打开目录 C:\Windows\System32\drivers\etc,在目录下有hosts文件 打开方式选用“记事本”打开 将一 ...

  10. PCB 围绕CAM自动化,打造PCB规则引擎

    AutoCAM自动化平台,前端管理订单,而后端执行任务,前端UIl界面有板厚,铜厚,板材,表面处理,层数等信息,而这些信息并不是后端最终所需要的信息后.拿钻孔补偿来说,后端需要的是钻孔补偿值,但前端并 ...