4

コマンド プロンプトで一時証明書 (metro アプリのビルドに必要) を作成したいと考えています。私は CMD でこれをやろうとしました:

makecert.exe -n "CN=MY_DOMAIN" -r -a sha1 -sv MY_DOMAIN.pvk MY_DOMAIN.cer –ss root

pvk2pfx -pvk MY_DOMAIN.pvk -spc MY_DOMAIN.cer -pfx MY_DOMAIN.pfx

しかし、プロジェクトでこの pfx ファイルを実行すると、次のエラーが発生します。

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\AppxPackage\Microsoft.AppXPackage.Targets(1142,9): エラー: APPX0107: 指定された証明書は署名に対して有効ではありません。

4

1 に答える 1

6

3 つの変更点:

  1. 証明書には、拡張キー使用法拡張のコード署名 OID (1.3.6.1.5.5.7.3.3) がありません。-eku 1.3.6.1.5.5.7.3.3への引数を使用して追加しmakecertます。
  2. Myに置き換えて、証明書をルート証明書ストアではなく証明書ストアに配置-ss root-ss Myます。
  3. -cy endmakecert への引数を使用して、証明書が Basic Constraints 拡張機能のエンド エンティティであることを確認します。

Windows ストア アプリへの署名の詳細については、MSDNアプリ パッケージへの署名 (Windows ストア アプリ)を参照してください。makecert 引数の詳細については、 MakeCertを参照してください。

于 2012-09-23T12:45:58.273 に答える