企业部署Windows 8 Store 风格应用
引言

之前我们都知道可以将应用程序发布到Windows 商店中供用户下载使用。如果我们是企业开发人员,则我们的应用可能属于以下两种类别之一:
1.应用内容是只与公司内个人切实相关的应用。
2.希望尽可能多的用户可以使用我们的应用,最好将该应用列在 Windows 应用商店中。
本篇博文主要针对第一种类型的应用如何部署到企业进行分析。
一、准备应用

虽然通过Windows Store将应用程序部署到客户电脑上是一种非常便捷的方式,但是对于定制或LOB应用程序来说,通常情况IT管理员希望直接将应用程序部署到企业用户的PC上。
在企业内部署应用之前,我们需要从以下几方面验证应用:
1.符合 Windows 应用认证工具包所验证的基本要求(该工具包可帮助我们在向用户部署应用之前发现应用中的任何潜在问题)。 关于如何使用认证工具可参考使用 Windows 应用认证工具包测试你的应用。
2.符合在企业内部署应用的相关指导规则(这些规则是由企业决定,微软并没有任何强制性的规则)。
3.为应用签名。这里简单说明一下应用签名。
- 若要向用户部署该应用包,则应用必须由目标电脑信任的证书颁发机构签名。其中包清单中的“发布者名称”必须与用于为应用签名的证书中的“发布者名称”一致。
- 另外我们可以查看 Windows 开发人员中心了解通过 Visual Studio 为应用签名的其他详细信息。
- 无需进行任何其他配置,Windows 即可信任许多证书颁发机构。如果该证书由一个信任的机构所颁发,则无需将其他证书部署到目标 Windows 8 电脑,也无需对这些证书进行管理。而且还可以使用公司的内部证书颁发机构来为该应用签名。如果选择此选项,则 IT 管理员必须确保 CA 证书已安装在目标电脑的 Windows 映像中。
- Visual Studio提供了一个应用签名的测试证书,我们可以使用它进行内部测试。另外微软建议我们使用这些证书只用于内部测试,而不是通过企业进行广泛部署。
二、准备电脑

首先我们需要知道Windows Server 2012 和 Windows 8 企业版被归类为“支持企业旁加载”。这表示电脑已准备好接收在 Windows 应用商店之外部署的应用。
如果要确保电脑已经就绪,请进行如下验证:
1.电脑已加入域。
2.组策略已设置为“允许安装受信任的应用”。
如果将需要应用部署到 Windows 8 Pro、Windows RT 或 Windows 8 Enterprise,则可通过以下方式针对旁加载应用进行配置:
1.激活各台电脑上用于企业旁加载的产品密钥。
2.将组策略设置为“允许安装受信任的应用”。
注意:安装的应用由这些电脑所信任的证书颁发机构签名。(这些证书不必来自受信任的证书颁发机构;只需用户电脑信任这些证书即可)
三、部署应用
我们可以使用 Windows 映像或在运行时向准备好的电脑部署应用。
通过映像部署应用可使应用对访问该计算机的所有现有用户和未来用户均可用,而在运行时部署应用会使应用仅对当前用户可用。
通过 Windows 映像部署应用的步骤:
1.确保组策略或注册表项允许对所有受信任的应用进行设置。可以使用修改注册表方式完成该操作:
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Appx\AllowAllTrustedApps = 1
2.使用部署映像服务和管理 (DISM) 命令行工具。例如,若要将程序包安装到脱机映像,打开命令提示符然后输入:
DISM /Add-ProvisionedAppxPackage /PackagePath:C:\App1.appx /SkipLicense
在运行时部署应用,可以使用Windows PowerShell 来完成部署。另外我们也可以通过使用支持执行 PowerShell 脚本或 cmdlet 的任何管理工具来完成这一操作。
例如,在 PowerShell 命令提示符下输入:add-appxpackage C:\ContosoApp\ExpenseApp.appx
四、部署更新
部署应用更新方式和在运行时部署应用所采用的方式相同,但是我们需要为计算机上的每位用户安装这些更新。
IT管理员可以通过GET-AppXPackage PowerShell cmdlet检测安装程序的相应版本。
IT管理员可以在PowerShell命令窗口使用强制更新的命令:add-appxpackage\\fileserver\ContosoApp\v1.1\ExpenseApp.appx
此时应用程序将会被重新更新并部署。
五、Windows RT设备上部署
对于Windows RT设备,我们可以使用全新的管理客户端。它为企业的机器提供了更加简便的用户体验,用户可以通过该管理客户端轻松获得IT管理员提供的应用程序。
下图为该管理客户端。

用户点击某一个应用后,可以进行安装。

由于篇幅的原因,这里我就不详细介绍了,大家可参考:managing your Windows RT PC
总结
当我们构建企业级Windows 8 Store风格应用程序,可以选择如何使这些应用程序。我们可以通过Windows Store发布应用程序,也可以直接部署应用程序。
更多关于Windows 8 Store风格应用部署文章可参考:
2.为包签名;
3.Deploying Metro style apps to businesses;
4.Managing "BYO" PCs in the enterprise (including WOA);
企业部署Windows 8 Store 风格应用的更多相关文章
- 重新想象 Windows 8 Store Apps (37) - 契约: Settings Contract
[源码下载] 重新想象 Windows 8 Store Apps (37) - 契约: Settings Contract 作者:webabcd 介绍重新想象 Windows 8 Store Apps ...
- 重新想象 Windows 8 Store Apps (68) - 后台任务: 控制通道(ControlChannel)
[源码下载] 重新想象 Windows 8 Store Apps (68) - 后台任务: 控制通道(ControlChannel) 作者:webabcd 介绍重新想象 Windows 8 Store ...
- 企业部署Linux应用将拥有更低的整体拥有成本
企业部署Linux应用将拥有更低的整体拥有成本 使用Linux能为企业的IT解决方案降低TCO(整体拥有成本Total Cost of The Ownership)吗?在面临这个问题时,很多企 ...
- Snort企业部署实战
Snort企业部署实战 1 背景 我们知道企业网络目前威胁来自两个位置:一个是内部,一个是外部.来自外部的威胁都能被防火墙所阻止,但内部攻击都不好防范.因为公司内部人员对系统了解很深且有合 ...
- 重新想象 Windows 8 Store Apps 系列文章索引
[源码下载][重新想象 Windows 8.1 Store Apps 系列文章] 重新想象 Windows 8 Store Apps 系列文章索引 作者:webabcd 1.重新想象 Windows ...
- 重新想象 Windows 8 Store Apps (34) - 通知: Toast Demo, Tile Demo, Badge Demo
[源码下载] 重新想象 Windows 8 Store Apps (34) - 通知: Toast Demo, Tile Demo, Badge Demo 作者:webabcd 介绍重新想象 Wind ...
- 重新想象 Windows 8 Store Apps (35) - 通知: Toast 详解
[源码下载] 重新想象 Windows 8 Store Apps (35) - 通知: Toast 详解 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 通知 Toa ...
- 重新想象 Windows 8 Store Apps (36) - 通知: Tile 详解
[源码下载] 重新想象 Windows 8 Store Apps (36) - 通知: Tile 详解 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 通知 Tile ...
- 重新想象 Windows 8 Store Apps (38) - 契约: Search Contract
[源码下载] 重新想象 Windows 8 Store Apps (38) - 契约: Search Contract 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 ...
随机推荐
- SQL Server 2008性能故障排查(三)——I/O
原文:SQL Server 2008性能故障排查(三)--I/O 接着上一章:CPU瓶颈 I/O瓶颈(I/O Bottlenecks): SQLServer的性能严重依赖I/O子系统.除非你的数据库完 ...
- C# Socket TCP Server & Client & nodejs client
要调试公司某项目里的一个功能,因为要准备测试环境,趁这个机会重温了一下Socket(全还给老师了 -_-#),做个备份. C# Server static void Main(string[] arg ...
- Mac周边环境 goBASIC语言HelloWorld
1. 安装mercurial Mercurial 是一种轻量级分布式版本号控制系统,採用 Python 语言实现 能够输入hg命令查询系统是否安装mercurial,能够例如以下两种命令安装 $sud ...
- Docker container communication with ovs
2台宿主机,192.168.11153,192.168.1.154 安装OVS rpm -ivh openvswitch-2.4.0-1.x86_64.rpm #预先下载的 配置OVS 1. 按照上一 ...
- dojo/dom源码
dojo/dom源码学习 dojo/dom模块作为一个基础模块,最常用的就是byId方法.除此之外还有isDescendant和setSelectable方法. dom.byId(myId)方法: ...
- BZOJ 1015 JSOI2008 星球大战 starwar 并检查集合
标题效果:给定一个无向图.联通谋求块的数目,以及k一个点的破坏后每次:联通,块的数目 侧面和摧毁的地步全记录,我们可以做相反的. 需要注意的是该点不能算作破坏联通块 #include<cstdi ...
- Leetcode 动态规划 Candy
本文senlie原版的,转载请保留此地址:http://blog.csdn.net/zhengsenlie Candy Total Accepted: 16494 Total Submissions: ...
- Unity3D流行的游戏开发人员构建高速检查站系统
好友,大家好,欢迎关注我的博客.我是秦培,我的博客地址blog.csdn.net/qinyuanpei. 今天,我想分享的是,现在在移动平台上的检查点系统更受欢迎,机游戏如<愤慨的小鸟>. ...
- 解决Gradle minifyEnabled无法找到错误
Android studio最新版0.9支持proguard minify,shrinkResources ,尝试了下,提示找不到minifyEnabled方法 Error:(29, 0) Gradl ...
- C++ Primer 学习笔记_29_STL实践与分析(3) --操作步骤集装箱(下一个)
STL实践与分析 --顺序容器的操作(下) 六.訪问元素 假设容器非空,那么容器类型的front和back成员将返回容器的第一个和最后一个元素的引用. [与begin和end的对照:] 1)begin ...