安装没有受信任证书的.appx?

我有一个 Windows8应用程序,我想部署到我的 WindowsRT2。我只有 .appx,我想只是通过绕过商店安装测试。但是,当我运行该命令时:

Add-AppxPackage <project.appx>

我得到以下错误:

内联脚本返回错误输出: Add-AppxPackage: 部署失败,HResult T: 0x800B0109,证书链已处理,但在信任提供程序不信任的根证书中终止。错误0x800b0109: 应用程序包中的签名根证书必须是可信的。*

谷歌说我需要证书或 PowerShell 脚本,但肯定有一个方法,我可以绕过这一切。理想情况下,我只想安装应用程序进行测试。

否则,解决这个问题最简单的方法是什么?我还需要什么与 .appx,以便我可以安装它没有问题?

100896 次浏览

The certificate is probably self-signed, so you need to install it to trust it.

Obtain the Certificate that signed the App

If this is your own app, you should be able to find it in your IDE ( e.g. Visual Studio) otherwise use these steps:

  1. Right click on APPX file
  2. Click Properties
  3. Click Digital Signatures
  4. Select Signature from the list
  5. Click Details
  6. Click View Certificate
  7. Click Install Certificate

Install the Certificate

Quote from Installing developer packages on Windows RT:

  1. From the Windows RT PC, either map the network share or connect the USB drive where you can access the AppPackages folder that contains the app package to install. Use Windows Explorer to open that folder.
  2. Double-tap the certificate file in the folder and then tap Install Certificate. This displays the Certificate Import Wizard.
  3. In the Store Location group, tap the radio button to change the selected option to Local Machine.
  4. Click Next. Tap OK to confirm the UAC dialog.
  5. In the next screen of the Certificate Import Wizard, change the selected option to Place all certificates in the following store.
  6. Tap the Browse button. In the Select Certificate Store pop-up window, scroll down and select Trusted People, and then tap OK.
  7. Tap the Next button; a new screen appears. Tap the Finish button.
  8. A confirmation dialog should appear; if so, click OK. (If a different dialog indicates that there is some problem with the certificate, you may need to do some certificate troubleshooting. However, describing what to do in that case is beyond the scope of this topic.)

See also:

Doesn't work for me. I still get the error after installing the certificate

If you received the message,

Either you need a new certificate installed for this app package, or you need a new app package with trusted certificates. Your system administrator or the app developer can help. A certificate chain processed, but terminated in a root certificate which isn't trusted (0x800B0109)

after renew your certificate, than probably your certificate is a temporary one and the simple way to solve it is make it usable.

To correct this error you need to change the position of certificate to root trusted certificates folder. When you click in your certificate, appear a page that ask you where you want to install it. So, there, you need to change to root trusted certificate folder and not use the default.

Regards

If you're getting this error: App installation failed with error message: Install failed. Please contact your software vendor. (0x80073cf9) Please check you might already installed this app. Please uninstall and try again

For me this was occurring when trying to install Side-load HockeyApp version

Fix:

Before installing: Enable Developer mode at

Settings ➔ Update & Security ➔ For Developers ➔ Use Developer features : Developer Mode


Install certificate (.cer file) to Trusted root certificates.

  • Store location = Local machine
  • Place all certificates in the following store = Third-Party Root Certification Authorities

Then retry

  1. Double-click the Package_1.0.6.0_AnyCPU_Debug.cer file
  2. Click the Install Certificate... button
  3. Store Location -> Local Machine
  4. Select the Place all certificates in the following store
  5. Click Browse... button
  6. Select the Trusted Root Certification Authorities
  7. OK

Chiming in. I got the following when trying to install an app.

Either you need a new certificate installed for this app package, or you need a new app package with trusted certificates. Your system administrator or the app developer can help. A certificate chain processed, but terminated in a root certificate which isn't trusted (0x800B0109)

Turns out the Powershell script starting the installer seems to do some preliminary work, amongst which is downloading and installing certificates and whatnot to the local machine.

Now, in an enterprise setting there usually are Internet filters in place. In our case it's an authenticating proxy and not a lot of software gets this right (1. using an explicit proxy, 2. asking for authentication when requested). It's always the same thing. Someone executes a script somewhere and doesn't think about people who don't have full and unauthenticated internet access all the time, like in an enterprise setting. IMHO you should just throw away software that can't get this right, it's the only way they (maybe) learn.