如何在 PowerShell 中为 Store (appxupload) 构建 Windows 8.1 应用程序?

How to build Windows 8.1 app for Store (appxupload) in PowerShell?

通常当我想为商店构建 Windows 8.1 或 Windows Phone 8.1 应用程序时,我打开 Visual Studio 2015 并在解决方案资源管理器中启动 Store -> 创建应用程序包.. 向导。

我希望能够使用 PowerShell 生成相同的签名 .appxupload 包,理想情况下只需提供目标项目文件、目标平台、构建配置和版本号.

有一个 page for packaging and deployment,但我只是不知道正确的命令顺序是什么。这个标准任务一定有一个简单的解决方案,对吧?注意我安装了 Windows 10 和 Visual Studio 2015 Pro,所以所有先决条件都应该存在。

还有一个额外的问题,是否可以 运行 Windows App Certification Kit 以及来自 PowerShell 的这个创建的包?
谢谢

这些命令适用于 W8.1 机器和 W8.1 项目上的 VS2013。我还不能用 VS2015/W10 验证它们。我想它们应该可以工作,只要安装了所需的 W8.1 SDK。

"C:\Program Files (x86)\Windows Kits.1\bin\x86\makeappx.exe" pack /d "<BinDirOfProject>" /p "<BindirOfProject>\output\project.appx" /l
"C:\Program Files (x86)\Windows Kits.1\bin\x86\makecert.exe" /n "CN=tom" /r /h 0 /eku "1.3.6.1.5.5.7.3.3,1.3.6.1.4.1.311.10.3.13" /e "01/01/2020" /sv "<BinDirOfProject>\output\key.pvk" "<BinDirOfProject>\output\key.cer"
"C:\Program Files (x86)\Windows Kits.1\bin\x86\pvk2pfx.exe" /pvk "<BinDirOfProject>\output\key.pvk" /pi "<Pwd>" /spc "<BinDirOfProject>\output\key.cer" /pfx "<BinDirOfProject>\output\key.pfx"
"C:\Program Files (x86)\Windows Kits.1\bin\x86\signtool.exe" sign /fd SHA256 /a /f "<BinDirOfProject>\output\key.pfx" /p "<Pwd>" "<BinDirOfProject>\output\project.appx"
certutil -addStore TrustedPeople "<BinDirOfProject>\output\key.cer"

创建证书时,系统会提示您输入私有-public 密钥对(makecert.exe,您当然可以使用现有证书)。 <Pwd> 是此证书的私钥。

经过挖掘日志,我自己找到了答案。
在将项目与商店关联并使用向导为商店构建应用程序并保存所有更改后,可以再次构建商店包,只需在参数中调用 'msbuild' 和 project/solution。

我已经在这里详细描述了它:
https://www.suchan.cz/2015/09/building-windows-store-appxupload-packages-using-powershell/