1、机制:

  微软的 Project Centernial ( Project C) 项目的就是把传统的 windows桌面应用程序

转换为 windows10 store app (appx)。

目的:

1)  传统桌面应用会导致系统注册表体积越来越大,导致系统运行变慢、不稳定。大多数软

件在安装的时候会获得 administrator 权限,可能导致其它应用程序被破坏,甚至系统被破坏。

2)  当卸载桌面应用的时候,往往并不安全,因为一个 Win32 应用可能依赖于早期安装的应用。

  Project C 使用两个现有的技术来修复这个问题,一个是 App-V  (百度百科App-V),一个企业级

的产品使app把它们的依赖项打包到一起,所以它们各自保持独立,并且与 System隔绝。应用

虚拟化(Application virtualization)就是应用程序可以读、写注册表,并且向 System路径中

(比如 System32文件夹)添加类库,但这些添加的内容会被放到应用程序自己的沙盒内(虚拟映射)。

  另一个就是  Windows Store,它会提供一种一键安装和卸载的机制,自动更新,

应用内支付等。从而不用担心会破坏 System和拖慢 Windows。

3)  Project C 就是为一个已有的 Win32(或 Win64)应用程序提供转换。工作原理

就是使用 App-V 做一个称作“排序”(sequencing)的转换过程。通过 App-V 的“排序”

来捕获程序对系统的更改。然后你运行应用程序的 installer。App-V记录所有的更改,

然后输出虚拟化(virtualised)后的应用程序包。在 Project C 还有更近一步的操作,

就是把这个包(pachage)捆绑成一个 Appx 包 ( Windows store app)。

  虽然使用相同的技术,但是Sheehan 强调,Project C 和 App-V 并不一样。

App-V 必须做“反常的事情”,因为它必须与现有的类库一起协作。而 Project C

让程序员,在打包前可能必须调整他们的代码。另一个不同的是, Project C app

可以使用 Windows 10 Universal app 相同的API,比如 Live Tile,动态更新开始

菜单,和其它的 Store app 进行通信等等。

4)Project C app 跟 Universal App 不同的是,它并不是运行在沙盒(sandboxed)中

的,但它们比传统 Win32 应用多一些限制。一个 Project C app 运行在 full user-level trust,

所以它不允许获得管理员权限。所以它们不能显示UAC(User Access Control)对话框来

获取更改系统的权限。不过他们可以使用 Windows 的特性,比如 COM 和 WMI(Windows

Management Instrumentation)、获取用户的硬件。

  Project C app 的一个限制是它不能从另外的 Project C app 中加载类库。

5)A Project C app 将只会运行在 PC 上,不会运行在 Phone、Xbox 或者 HoloLens 上。

2、 进度: 

  目前 Project C 项目并未提供公测,我注册了一下我的个人信息,当这个项目有进展的时候,

会给邮箱发邮件。(https://dev.windows.com/zh-cn/uwp-bridges)

总结参考:

1)Project Centennial": Converting your Classic Windows App (Win32, .Net, COM) to a Universal Windows App for Distribution in the Windows Store :

https://channel9.msdn.com/Events/Build/2015/2-692

2)How Project Centennial brings potentially millions of desktop apps to the Windows 10 Store:http://www.theregister.co.uk/2015/05/06/windows_10_project_centennial/

3)Application Virtualization:https://technet.microsoft.com/en-us/windows/hh826068.aspx

4)百度百科App-V : http://baike.baidu.com/view/3770203.htm

09、win32 转换为 store app的更多相关文章

  1. Windows 8.1 store app 开发笔记

    原文:Windows 8.1 store app 开发笔记 零.简介 一切都要从博彦之星比赛说起.今年比赛的主题是使用Bing API(主要提到的有Bing Map API.Bing Translat ...

  2. Windows store app[Part 4]:深入WinRT的异步机制

    接上篇Windows store app[Part 3]:认识WinRT的异步机制 WinRT异步机制回顾: IAsyncInfo接口:WinRT下异步功能的核心,该接口提供所有异步操作的基本功能,如 ...

  3. Windows store app[Part 1]:读取U盘数据

    Windows 8系统下开发App程序,对于.NET程序员来说,需要重新熟悉下类库. 关于WinRT,引用一张网上传的很多的结构图: 图1 针对App的开发,App工作在系统划定的安全沙箱内,所以通过 ...

  4. 在桌面程序上和Metro/Modern/Windows store app的交互(相互打开,配置读取)

    这个标题真是取得我都觉得蛋疼..微软改名狂魔搞得我都不知道要叫哪个好.. 这边记录一下自己的桌面程序跟windows store app交互的过程. 由于某些原因,微软的商店应用的安全沙箱导致很多事情 ...

  5. 吐槽坑爹的微软win store app审核

    从学习win store app 开发到做出第一个应用 博客园cnblogs 花了一个多月的全部业余和上班空闲时间, 上周在端午节放假期间终于完成了计划的全部开发和测试, 6月10号怀着无比激动的心情 ...

  6. Windows Store App 过渡动画

    Windows Store App 过渡动画     在开发Windows应用商店应用程序时,如果希望界面元素进入或者离开屏幕时显得自然和流畅,可以为其添加过渡动画.过渡动画能够及时地提示用户屏幕所发 ...

  7. 05、Windows Store app 的图片裁切(更新)

    在 Win Phone Silverlight api 中,有一个 PhotoChooserTask 选择器,指定宽.高属性,在选择图片的时候, 可以进行裁切,代码: PhotoChooserTask ...

  8. 01、Windows Store APP 设置页面横竖屏的方法

    在 windows phone store app 中,判断和设置页面横竖屏的方法,与 silverlight 中的 Page 类 不同,不能直接通过 Page.Orientation 进行设置.而是 ...

  9. Windows store app[Part 3]:认识WinRT的异步机制

    WinRT异步机制的诞生背景 当编写一个触控应用程序时,执行一个耗时函数,并通知UI更新,我们希望所有的交互过程都可以做出快速的反应.流畅的操作感变的十分重要. 在连接外部程序接口获取数据,操作本地数 ...

随机推荐

  1. 【.NET特供-第三季】ASP.NET MVC系列:传统WebForm站点和MVC站点执行机制对照

    本文以图形化的方式,从'执行机制'方面对照传统WebForm站点和MVC站点. 请參看下面图形: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhb2 ...

  2. 算法笔记_122:蓝桥杯第七届省赛(Java语言A组)试题解答

     目录 1 煤球数目 2 生日蜡烛 3 搭积木 4 分小组 5 抽签 6 寒假作业 7 剪邮票 8 取球博弈 9 交换瓶子 10 压缩变换   前言:以下试题解答代码部分仅供参考,若有不当之处,还请路 ...

  3. epoll+socket的简单测试例子

    server: #include <sys/socket.h> #include <sys/epoll.h> #include <netinet/in.h> #in ...

  4. atitit.提升开发效率---MDA 软件开发方式的革命(3)----自己主动化建表

    atitit.提升开发效率---MDA 软件开发方式的革命(3)----自己主动化建表 1. 建模在后自己主动建表 1 1. 传统上,须要首先建表,在业务编码.. 1 2. 模型驱动建表---很多其它 ...

  5. 生成CFree 5.0 注册码

    C-Free 5.0真是一个很棒的编程软件,可今天用着用着却让我注册,下面的注册码分享给大家: 方法一.下载CFree 5.0之后,直接输入以下信息进行注册. 用户名:tianfang电子邮件:qua ...

  6. python第三方包的windows安装文件exe格式

    今天弄了一上午的python-ldap,发现要么安装vc,要么用其他比较麻烦的方法,都比较麻烦.幸好找到这个地址: http://www.lfd.uci.edu/~gohlke/pythonlibs/ ...

  7. CameraManager与CameraDevice与ICameraService的相应关系

    Camera2 AP Framewok中有三个比較重要的组件:CameraManager.CameraDevice.ICameraService,他们的相应关系例如以下: 一个Context中会有一个 ...

  8. 解决sitemesh3装饰页面不能使用freemarker标签问题

    如题,这个问题其实在sitemesh2中已经很好的解决了,不过在sitemesh3中可能没有解决,所以要自己写代码解决了,下面我先讲下sitemesh2是如何解决的: <servlet> ...

  9. 通过shell定时备份数据库

    需求: 每天凌晨2:10备份数据库zhengDB到 /data/backup/db. 备份开始和结束能够给出相应提示信息. 备份后的文件标识标准为已备份时间为文件名,并打包成 .tar.gz 的形式, ...

  10. 查看Windows端口及端口关闭方法(转)

    摘自:http://www.hackbase.com/tech/2011-05-17/63766.html 查看Windows端口及端口关闭方法 一.查看已开放的端口: 1.借助系统自带MS-DOS命 ...