Microsoft Desktop App Converter (AKA Desktop Bridge) を使用しようとしていますが、発行者名にコンマ、スペース、ピリオドが含まれています。
例えば。CN="Acme, Inc."
これは動作しません:
DesktopAppConverter.exe -Installer .\Installer.msi -Destination AppxFolder -PackageName "AcmeApp" -Publisher "CN=Acme, Inc." -Version 1.0.0.0 -MakeAppx
次のような引用符をエスケープするさまざまな方法を試しました。
-Publisher "CN=\`"Acme`, Inc.\`""
結果:
引数 'Inc.' を受け入れる位置パラメーターが見つかりません。
これ:
-Publisher 'CN="Acme, Inc."'
結果:
無効な入力のため、Appx マニフェストの検証に失敗しました:「発行者」に値「CN=Acme, Inc.」を割り当てることはできません。元のエラー: '"1" 個の引数を指定して "SetPackageIdentityPublisher" を呼び出す例外: "スキーマに対する AppxManifest.xml の検証がエラーで失敗しました: XML でエラーが見つかりました (0): 'Publisher' 属性が無効です - 値「CN=アクメ株式会社」そのデータ型 'http://schemas.microsoft.com/appx/manifest/types:ST_Publisher_2010_v2' によると無効です - パターン制約が失敗しました。
これ:
-Publisher 'CN="Acme\`, Inc."'
結果:
無効な入力のため、Appx マニフェストの検証に失敗しました:「発行者」に値「CN=Acme`, Inc.」を割り当てることはできません。元のエラー: '"1" 個の引数を指定して "SetPackageIdentityPublisher" を呼び出す例外: "スキーマに対する AppxManifest.xml の検証がエラーで失敗しました:
XML (0) でエラーが見つかりました: 'Publisher' 属性が無効です - 値「CN=アクメ株式会社」そのデータ型 'http://schemas.microsoft.com/appx/manifest/types:ST_Publisher_2010_v2' によると無効です - パターン制約が失敗しました。
これ:
-Publisher "CN=Acme, Inc."
結果:
無効な入力のため、Appx マニフェストの検証に失敗しました:「発行者」に値「CN=Acme, Inc.」を割り当てることはできません。元のエラー: '"1" 個の引数を指定して "SetPackageIdentityPublisher" を呼び出す例外: "スキーマに対する AppxManifest.xml の検証がエラーで失敗しました: XML (0) でエラーが見つかりました: 'Publisher' 属性が無効です - 値「CN=アクメ株式会社」' http://schemas.microsoft.com/appx/manifest/types:ST_Publisher_2010_v2 ' - パターン制約に失敗しました。
これ:
-Publisher "CN='Acme\, Inc.'"
結果:
引数 'System.Object[]' を受け入れる位置パラメーターが見つかりません。
これ:
-Publisher "CN=Acme\, Inc."
結果:
無効な入力のため、Appx マニフェストの検証に失敗しました: 'Publisher' に値 'CN=Acme\, Inc.' を割り当てることはできません。元のエラー: '"1" 個の引数を指定して "SetPackageIdentityPublisher" を呼び出す例外: "スキーマに対する AppxManifest.xml の検証がエラーで失敗しました: XML (0) でエラーが見つかりました: 'Publisher' 属性が無効です - 値「CN=Acme\, Inc.」' http://schemas.microsoft.com/appx/manifest/types:ST_Publisher_2010_v2 ' - パターン制約に失敗しました。
発行者名を完全に設定する必要があるため、非常に面倒です。そうしないと、コード署名証明書の発行者名と一致しないため、後で署名が機能しなくなります。
これを行う正しい方法は何ですか?