分发和安装Win10应用程序的方法

时间:2018-08-31 10:57:09

标签: uwp certificate windows-10-universal signing appx

在不使用Microsoft-Store的情况下分发和安装Win10 Appxpackage的方法是什么?

我有一个客户希望我创建一个“ Exe-File”,让他在公司内部分发该应用程序。

所以我用Visual Studio的内置工具制作了一个Appxpackage。

其中包含:

  • Add-AppDevPackage.ps1
  • appname.appx
  • appname.cer

问题: 要安装该应用程序,我必须在PowerShell中运行.ps1文件,然后安装证书(.cer)才能安装该软件包。我认为客户“仅”安装该应用程序就足够了。

然后我用“ MakeAppX.exe”创建一个AppxPackage,并用SignTool对其进行签名。

但是仍然需要首先安装证书。

我还知道Microsoft具有允许将应用程序分发给选定工作人员的Business Option,但这对客户来说不是一个选择...

所以我的问题是:

  • 还有另一种分发应用程序的方法吗?
  • 是否可以使流程自动化? (先安装证书,然后再安装Appx的脚本)
  • 我可以先安装应用程序而不先安装证书吗?

1 个答案:

答案 0 :(得分:1)

还有另一种分发应用程序的方法吗?

最终用户只需双击appx/appxbundle文件即可安装软件包。这种体验很像安装MSI / EXE。这将调用系统内置的App Installer。

它也可以托管在Intranet网站上并安装from the web(我之前曾尝试过这种方法,但可能由于尝试的设备未获得最新更新而未能成功。)

是否可以使流程自动化?

安装appx实际上可以归结为两个PowerShell命令

Import-Module Appx;
Add-AppxPackage appname.appx;

You can call PowerShell commands from C#,而不是运行.ps1文件。因此最终用户不会看到令人恐惧的PowerShell CLI

注意:您需要先安装依赖项,然后再安装appname.appx,这也是appx软件包,位于子文件夹中。因此,编写程序以针对每个Add-AppxPackage分别调用appx,首先是依赖项,然后是应用程序。

我可以先安装应用程序而不先安装证书吗?

不。这是困难的部分。

要安装您的应用,最终用户必须安装该应用的证书以表示他们信任您-只能安装来自受信任来源的应用。而且此过程需要用户的明确同意,我认为您不能静静地使用脚本或其他内容来安装证书。

在公司环境中,设备可能已经安装了一些证书。如果您的应用程序已使用以下证书之一进行签名,则认为您的应用程序来自受信任的来源,您可以完全跳过安装证书的步骤。但是我认为要求您的客户提供这样的代码签名证书是不现实的,因为这严重违反了其组织的信息安全性。