Project Centennial コンバーター (つまり、デスクトップ ブリッジ) を使用して、Win32 アプリを UWP アプリに変換しようとしています。
アプリが変換されたら、AppxManifest.xml
ファイルを調整して次のことを確認する必要があります。
すべてのアイコン形式が適切に構成されていること。
英語 (米国)、ドイツ語、フランス語、ロシア語のアプリ リソースを適切に指定したこと。
そこで、この Windows 10 アイコン ガイドに従って、次の.png
画像を作成し、すべてAssets
フォルダーに配置しました。私はこれらを手に入れました:
そして、私のAppxManifest.xml
ものは次のように構成されていました:
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2" xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3" xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10">
<Identity Name="MyApp.Name" ProcessorArchitecture="x86" Publisher="CN=My Name, O=My Name, STREET="Street Address", L=City, S=State, PostalCode=12345, C=US" Version="1.2.3.4" />
<Properties>
<DisplayName>MyApp.Name</DisplayName>
<PublisherDisplayName>PublisherName</PublisherDisplayName>
<Logo>Assets\StoreLogo-50x50.png</Logo>
</Properties>
<Resources>
<Resource Language="en-us" />
<Resource Language="de-DE" />
<Resource Language="fr-FR" />
<Resource Language="ru-RU" />
</Resources>
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14342.0" MaxVersionTested="10.0.14342.0" />
</Dependencies>
<Capabilities>
<rescap:Capability Name="runFullTrust" />
</Capabilities>
<Applications>
<Application Id="MyApp.Name" Executable="VFS\Users\ContainerAdministrator\AppData\Local\PublisherName\App Name\RunFile.exe" EntryPoint="Windows.FullTrustApplication">
<uap:VisualElements DisplayName="My App Name" Description="My app does this ... and this ..."
BackgroundColor="#aabbcc"
Square71x71Logo="Assets\AppNameSmallTile.png"
Square150x150Logo="Assets\AppNameMedTile.png"
Square310x150Logo="Assets\AppNameWideTile.png"
Square310x310Logo="Assets\AppNameLargeTile.png"
Square44x44Logo="Assets\AppNameAppList.png"
>
<uap:DefaultTile>
<uap:ShowNameOnTiles>
<uap:ShowOn Tile="square150x150Logo" />
<uap:ShowOn Tile="Square310x150Logo" />
<uap:ShowOn Tile="Square310x310Logo" />
</uap:ShowNameOnTiles>
</uap:DefaultTile>
</uap:VisualElements>
<Extensions />
</Application>
</Applications>
</Package>
誰かがこれらの質問に答えることができます:
正しいサイズとスケーリングのアイコンを指定することについて、私は多少混乱しています。私はそれを正しくしましたか?
Assets\StoreLogo-50x50.png
アイコンのスケーリングも指定する必要がありますか?最後に、4 つの異なる言語のリソースを正しく指定しましたか?
EDITAppxManifest.xml
:待っている間、私が示したアセットで上記をコンパイルしようとしました。しかし、makeappx.exe
ツールは私に次のエラーを与えます:
MakeAppx: エラー: エラー情報: エラー C00CE015: アプリ マニフェストの検証エラー: アプリ マニフェストはスキーマに従って有効である必要があります: 行 22、列 27、理由: 要素 '{ http://schemas.microsoftの属性 'Square71x71Logo' .com/appx/manifest/uap/windows10 }VisualElements' は DTD/スキーマで定義されていません。
次のアイコンのサイズは明らかに気に入りません。
Square71x71Logo
Square310x150Logo
Square310x310Logo
しかし、上記のアイコンサイズを から削除してもAppxManifest.xml
、次のコマンドでパックしようとすると:
"C:\Program Files (x86)\Windows Kits\10\bin\x64\makeappx.exe" pack /d "path-to-folder-to-pack" /p "path-to\MyAppxPackage.appx"
スケーリング用のアセットの命名に関して、次のエラーが発生します。
MakeAppx : エラー: マニフェスト検証エラー: 行 22、列 27、理由: 要素 " [local-name()='Applications']/ [local-name()='に対して宣言されたファイル名 "Assets\AppNameMedTile.png" Application']/ [local-name()='VisualElements']" はパッケージに存在しません。このファイルに言語、スケール、コントラストなどの複数のバリエーションまたはリソース バージョンがある場合は、/l コマンド ライン オプションを使用してこの検証を無効にします。MakeAppx : エラー: マニフェスト検証エラー: 行 23、列 27、理由: 要素 " [local-name()='Applications']/ [local-name()='に対して宣言されたファイル名 "Assets\AppNameAppList.png"応用']/[local-name()='VisualElements']" はパッケージに存在しません。このファイルに言語、スケール、コントラストなどの複数のバリエーションまたはリソース バージョンがある場合は、/l コマンド ライン オプションを使用してこの検証を無効にします。 . MakeAppx : エラー: パッケージの作成に失敗しました. MakeAppx : エラー: 0x80080204 - 指定されたパッケージ形式が無効です: パッケージ マニフェストが無効です。
提案され/l
たコマンドをそのまま使用する:
"C:\Program Files (x86)\Windows Kits\10\bin\x64\makeappx.exe" pack /l /d "path-to-folder-to-pack" /p "path-to\MyAppxPackage.appx"
多くの警告を表示してパッケージをビルドします。しかし、後でインストールすると、その中のすべてのアイコンが空白のようです。
ここで私が見逃しているものがあるに違いありませんか?