在Windows 8 Pro上侧载应用程序

14

我正在企业环境中尝试使用Windows 8应用程序的侧载功能。我们的客户很可能会在基于x86的平板电脑上运行Windows 8 Pro。通过PowerShell部署应用程序效果不错,只要目标设备上有注册开发人员帐户。如果没有,则在启动应用程序时会出现以下错误:

无法打开此应用程序

~AppName~ 存在问题。请与系统管理员联系以修复或重新安装该应用程序。

我们CA的根证书已安装在设备上,并且正确设置了“允许安装所有受信任的应用程序”组策略设置。该设备处于(实验性)域中。在Windows 8 Enterprise中,它实际上像魅力一样工作。

根据TechNet上的这篇文章,除Enterprise版本外,在任何其他Windows版本上进行侧载都需要“侧载产品激活密钥”。我搜索了更多关于这种密钥的信息,但是什么也没找到。

所以我的问题是:什么是“侧载产品激活密钥”,谁生成它,如何激活/输入它?还是这个短语意味着我们需要选择Windows 8 Enterprise?


1
我认为,您需要拥有Windows 8企业版才能允许侧载,在其他版本中您需要一个开发者密钥。我相信这样做的理由是因为只有企业(LOB应用程序)和开发人员才需要这样的功能。 - Rafael
@Rafael,几乎所有的服务器版本都支持它。 - N_A
3个回答

10

http://blogs.msdn.com/b/windowsstore/archive/2012/04/25/deploying-metro-style-apps-to-businesses.aspx 中提到:“[你需要]在目标设备上激活特殊产品密钥以启用侧载功能。我们将在即将发布的博客文章中详细介绍如何获取产品密钥。该产品密钥只需在PC上安装和激活一次”。

最新发现(8月28日):http://social.technet.microsoft.com/Forums/en-US/w8itproinstall/thread/3092a681-b9cc-473b-83aa-b492ea7f3946 ...中提到:“在Windows RT或Windows 8 Pro上,如果您已激活了侧载产品密钥,则无需企业SKU即可进行侧载。关于如何获取这样的密钥的详细信息尚不可用。”


6
根据ZDNet的这篇文章,你需要购买激活侧载功能所需的密钥,以在Windows 8 Pro上启用侧载(除非你想继续使用开发者许可证)。如果你搜索给定的SKU(J7S-00005),你会发现一些商店在以每30欧元的价格销售100个密钥的捆绑包。

看起来小型企业(约10个设备)可能会坚持使用开发者许可证... - terry

4
官方分享应用的文档在这里。答案分为两部分:

该脚本执行以下步骤。

...

第2步:验证您是否拥有开发人员许可证。如果脚本没有找到许可证或您当前的许可证已过期,则会提示您获取许可证。 要获得开发人员许可证,您必须拥有 Microsoft 帐户。有关详细信息,请参阅获取开发人员许可证 (Metro 样式应用)。

在商店接受您的 Metro 样式应用之前,您必须根据某些规则对其进行打包和认证。如果 Windows 商店尚未认证 Metro 样式应用,则该应用程序无法在 Windows 上运行,除非您在本地计算机上安装了开发人员许可证或该应用程序是由您的企业通过侧载方式安装在计算机上的。(此限制不适用于桌面应用程序。)侧载是指安装未通过 Windows 应用商店分发的应用程序,通常用于测试应用程序在准备好出售之前。有关侧载的更多信息,请参见什么是侧载?Windows 应用商店允许它吗?

链接,可以在没有 Visual Studio 的情况下获得开发人员许可证。

在命令提示符中获取开发人员许可证

如果您未使用 Visual Studio 2012,则可以通过在 Windows PowerShell 中运行以下命令,在命令提示符中获取和管理开发人员许可证:

Show-WindowsDeveloperLicenseRegistration。此命令打开一个对话框,您可以从中获取开发人员许可证并将其安装在本地计算机上。要运行此命令,您必须拥有有效的 Microsoft 帐户。您还必须在具有提升的权限的命令提示符中运行此命令。

Get-WindowsDeveloperLicense。此命令返回一个具有两个属性的对象:ExpirationTime 和 IsValid。ExpirationTime 是包含许可证到期日期和时间的 System.DateTime 结构。IsValid 是一个 System.Boolean,指示许可证是否有效。您可以从非提升的命令提示符或具有提升的权限的命令提示符中运行此命令。

Unregister-WindowsDeveloperLicense。此命令警告您,如果从本地计算机中删除开发人员许可证,则某些 Metro 样式应用将停止工作。如果选择“是”(默认值)以确认要删除许可证,则会从本地计算机中删除许可证。您必须在具有提升的权限的命令提示符中运行此命令。示例显示了基本的 PowerShell 语法:

C:\PS> Show-WindowsDeveloperLicenseRegistration
C:\PS> Get-WindowsDeveloperLicense
C:\PS> Unregister-WindowsDeveloperLicense

根据你提到的,另一种方法是通过侧面加载你的应用程序。相关文档可以在这里找到。更多关于侧面加载的信息可以在这里链接到MSDN。

所需密钥的主要点是:

目前,Consumer Preview和Windows Server 8 Beta被归类为“企业侧面加载已启用”。这意味着当PC加入域时,它可以配置为接受其IT管理员提供的非Windows Store应用。未来,安装非Windows Store Metro样式应用程序的此功能将适用于Windows 8企业版和Windows 8服务器版。


正如我所提到的,我可以使用开发人员许可证来运行它。但是我不会在生产系统上获取这样的许可证并经常刷新它。您的侧载链接说明:“需要激活特殊产品密钥才能启用侧载”。那么这是什么样的密钥? - Gene
抱歉,信息已经在那里了,但你需要挖掘一下。我已将它添加到我的答案中。 - N_A
可以解释一下桌面应用程序(如上所述)与 Metro 应用程序有何不同吗? - Erik Eidt
1
@user471129 桌面应用程序是从传统桌面运行的,而 Metro 应用程序必须在新的 Metro 环境中运行。如果您使用过 Windows 8,这一点应该很清楚。 - N_A
未回答原问题。 - Native_Mobile_Arch_Dev
@IOS_Dev 在发表评论之前,也许你应该看一下帖子上的日期。当时,这就是所有可用的信息。 - N_A

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接