コマンドライン変換のテンプレートファイルを生成する方法How to generate a template file for command line conversions

MSIX パッケージ化ツールを使用すると、対話型 UI またはコマンドラインオプションを使用して、次の2つの方法で変換を実行できます。With the MSIX Packaging Tool, you can perform the conversion in two ways: through the interactive UI or through our command line option. コマンドラインを使用する場合は、変換が特定の設定とニーズに合わせて機能するように、テンプレートファイルを指定する必要があります。When using the command line, you need to provide a template file so that the conversion works with your specific settings and needs. この記事では、自分に適したテンプレートファイルを生成するプロセスについて説明します。This article will help guide you through the process of generating a template file that works for you.

自分に適したテンプレートファイルを取得するには、次の2つの方法があります。There are two ways that you can get a template file that works for you:

  • MSIX パッケージ化ツールの UI を使用できます。You can use the UI of the MSIX Packaging Tool. ツールの設定では、作成する各 MSIX パッケージで変換テンプレートファイルを生成するように指定できます。In the settings of the tool, you can specify that you want to generate a conversion template file with each MSIX package that you create.
  • サンプルテンプレートを使用して、各変換に必要な構成を手動で入力できます。You can take a sample template and manually enter the configurations that you need for each conversion.

MSIX パッケージ化ツールから変換テンプレートファイルを生成するGenerate a conversion template file from the MSIX Packaging Tool

  1. MSIX パッケージ化ツールを起動します。Launch the MSIX Packaging Tool.
  2. アプリケーションの右上隅にある設定にアクセスします。Go to the settings in the top right corner of the application.
  3. [パッケージを使用してコマンドラインファイルを生成する] オプションが選択されていることを確認します。Make sure that the 'Generate a command line file with each package' option is selected.
  4. 必要な設定 (除外項目、終了コードなど) に対して、その他の変更や変更を行います。Make any other changes or modifications to your settings that you need (e.g. exclusion items, exit codes).
  5. 設定を保存しますSave the settings
  6. インストーラーを使用して、アプリケーションパッケージのワークフローを実行します。Go through the Application Package workflow using an installer.
    • インストーラーを選択しない場合、変換テンプレートファイルを生成することはできません。If you don't select an installer, you will not be able to generate a conversion template file.
    • Exe を使用している場合は、変換テンプレートファイルを生成するために、インストーラーにサイレントフラグを渡す必要があります。If you are using an exe, you will need to pass a silent flag to your installer to generate the conversion template file.
  7. 変換が終了すると、選択したインストーラーに基づいてテンプレートファイルが構成され、現在の設定で、今後の変換に再利用できるようになります。At the end of the conversion, you will have a template file configured based on the installer you chose, and your current settings which you can now re-use for future conversions.
    • 既定では、変換テンプレートファイルは、MSIX パッケージと同じ場所に保存されますが、[パッケージの作成] ページでテンプレートファイルの保存場所を個別に指定できます。By default, the conversion template file will be saved in the same location as your MSIX package, but you can specify a separate save location for your template file on the Create package page.
    • 各変換の最後に出力する MSIX に応じて、いくつかの変更を加える必要があります。You will still need to make some modifications based on what MSIX you want output at the end of each conversion.

変換テンプレートファイルを手動で編集するManually edit the conversion template file

変換テンプレートファイルのテンプレートパラメーターを手動で編集して、自分に適したテンプレートファイルを生成することができます。You can manually edit the template parameters for the conversion template file to generate a template file that works for you. 変換テンプレートファイルを生成するときは、テンプレートファイルに追加する機能に注意してください。機能するために、追加のスキーマ参照が必要になる場合があります。When generating the conversion template file, pay attention to which features you add into the template file, as some may require an additional schema references in order to work.

変換テンプレートパラメーターのリファレンスConversion template parameter reference

変換テンプレート ファイルで使用できるパラメーターの全一覧を次に示します。Here is the complete list of parameters that you can use in the Conversion template file.

ConversionSettingsConversionSettings 説明Description
設定:: AllowTelemetrySettings:: AllowTelemetry [省略可能] このツールの呼び出しについてのテレメトリ ログを有効にします。[optional] Enables telemetry logging for this invocation of the tool.
設定:: Applyallのコンピューターの修正プログラムSettings:: ApplyAllPrepareComputerFixes [省略可能] 準備コンピューターの推奨される修正プログラムをすべて適用します。[optional] Applies all recommended prepare computer fixes. その他の属性が使用される場合は設定できません。Cannot be set when other attributes are used.
設定:: GenerateCommandLineFileSettings:: GenerateCommandLineFile [省略可能] 将来使用するために、テンプレート ファイルの入力を SaveLocation ディレクトリにコピーします。[optional] Copies the template file input to the SaveLocation directory for future use.
設定:: AllowPromptForPasswordSettings:: AllowPromptForPassword [省略可能] 仮想マシン用および署名証明書用のパスワードが必須かつ未指定の場合、その入力をユーザーに求めるようツールに指示します。[optional] Instructs the tool to prompt the user to enter passwords for the Virtual Machine and for the signing certificate if it is required and not specified.
設定:: EnforceMicrosoftStoreVersioningRequirementsSettings:: EnforceMicrosoftStoreVersioningRequirements [省略可能] Microsoft Store およびビジネス向け Microsoft Store からの展開に必要なパッケージ バージョン管理スキームを適用するようツールに指示します。[optional] Instructs the tool to enforce the package versioning scheme required for deployment from Microsoft Store and Microsoft Store for Business.
設定:: ServerPortNumber 番号Settings:: ServerPortNumber optionalリモートコンピューターに接続するときに使用します。[optional] Used when connecting to a remote machine. テンプレートスキーマの v2 が必要です。Requires v2 of the template schema.
設定:: AddPackageIntegritySettings:: AddPackageIntegrity optional生成されたすべての MSIX にパッケージの整合性を追加します。[optional] Adds Package Integrity to every generated MSIX. では、v5 テンプレートスキーマが必要です。Requires v5 of the template schema.
Validインストーラ ExitコードValidInstallerExitCodes [省略可能] 0 個以上の ValidInstallerExitCode 要素。[optional] 0 or more ValidInstallerExitCode elements. テンプレートスキーマの v2 が必要です。Requires v2 of the template schema.
Validインストーラ Exitコード:: ValidInstallerExitCodeValidInstallerExitCodes:: ValidInstallerExitCode optionalツールが使い慣れていない、または再起動が必要なインストーラーの終了コードを指定します。[optional] Specify any installer exit codes that the tool might not be familiar with or require a reboot. テンプレートスキーマの v2 が必要です。Requires v2 of the template schema.
Validインストーラ Exitコード:: ValidInstallerExitCode:: RebootValidInstallerExitCodes:: ValidInstallerExitCode:: Reboot optional変換中に終了コードで再起動をトリガーするかどうかを指定します。[optional] Specify whether an exit code should trigger a reboot during conversion. テンプレートスキーマの v3 が必要です。Requires v3 of the template schema.
ExclusionItemsExclusionItems [省略可能] 0 個以上の FileExclusion または RegistryExclusion 要素。[optional] 0 or more FileExclusion or RegistryExclusion elements. FileExclusion 要素はすべて、RegistryExclusion 要素の前に表示されている必要があります。All FileExclusion elements must appear before any RegistryExclusion elements.
ExclusionItems::FileExclusionExclusionItems::FileExclusion [省略可能] パッケージ化から除外するファイル。[optional] A file to exclude for packaging.
ExclusionItems::FileExclusion::ExcludePathExclusionItems::FileExclusion::ExcludePath パッケージ化から除外するファイルへのパス。Path to file to exclude for packaging.
ExclusionItems::RegistryExclusionExclusionItems::RegistryExclusion [省略可能] パッケージ化から除外するレジストリ キー。[optional] A registry key to exclude for packaging.
ExclusionItems:: RegistryExclusion:: ExcludePathExclusionItems::RegistryExclusion:: ExcludePath パッケージ化から除外するレジストリへのパス。Path to registry to exclude for packaging.
PrepareComputer::DisableDefragServicePrepareComputer::DisableDefragService [省略可能] アプリの変換中、Windows のデフラグ ツールを無効にします。[optional] Disables Windows Defragmenter while the app is being converted. false に設定すると、ApplyAllPrepareComputerFixes がオーバーライドされます。If set to false, overrides ApplyAllPrepareComputerFixes.
コンピューターの処理:: DisableWindowsSearchServicePrepareComputer:: DisableWindowsSearchService [省略可能] アプリの変換中、Windows Search を無効にします。[optional] Disables Windows Search while the app is being converted. false に設定すると、ApplyAllPrepareComputerFixes がオーバーライドされます。If set to false, overrides ApplyAllPrepareComputerFixes.
コンピューター:: DisableSmsHostService を実行していますPrepareComputer:: DisableSmsHostService [省略可能] アプリの変換中、SMS ホストを無効にします。[optional] Disables SMS Host while the app is being converted. false に設定すると、ApplyAllPrepareComputerFixes がオーバーライドされます。If set to false, overrides ApplyAllPrepareComputerFixes.
コンピューターの実行:: DisableWindowsUpdateServicePrepareComputer:: DisableWindowsUpdateService [省略可能] アプリの変換中、Windows Update を無効にします。[optional] Disables Windows Update while the app is being converted. false に設定すると、ApplyAllPrepareComputerFixes がオーバーライドされます。If set to false, overrides ApplyAllPrepareComputerFixes.
SaveLocationSaveLocation [省略可能] ツールの保存先を指定する要素。[optional] An element to specify the save location of the tool. 指定しない場合、パッケージは Desktop フォルダーに保存されます。If not specified, the package will be saved under the Desktop folder.
SaveLocation::PackagePathSaveLocation::PackagePath [省略可能] 結果として得られる MSIX パッケージの保存先のファイルまたはフォルダーへのパス。[optional] The path to the file or folder where the resulting MSIX package is saved.
SaveLocation::TemplatePathSaveLocation::TemplatePath optional結果のコマンドラインテンプレートが保存されるファイルまたはフォルダーへのパス。[optional] The path to the file or folder where the resulting command line template is saved.
Installer::PathInstaller::Path アプリケーション インストーラーへのパス。The path to the application installer.
Installer::ArgumentsInstaller::Arguments [省略可能] インストーラーに渡す引数。[optional] The arguments to pass to the installer. 本ツールによって引数 "/qn /norestart INSTALLSTARTMENUSHORTCUTS=1 DISABLEADVTSHORTCUTS=1" がサイレントで使用され、MSI インストーラーが自動的に実行されます。The tool will automatically run MSI installers silently using argument "/qn /norestart INSTALLSTARTMENUSHORTCUTS=1 DISABLEADVTSHORTCUTS=1". メモ: .exe インストーラーを使用している場合は、引数を渡して、インストーラーがサイレントモードで実行されるようにする必要があります。NOTE: You must pass the arguments to force your installer to run silently if you are using .exe installers.
Installer::InstallLocationInstaller::InstallLocation optionalインストールされている場合は、インストールされているファイルのアプリケーションのルートフォルダーへの完全パス (例: "C:\Program Files (x86) \MyAppInstalllocation")。[optional] The full path to your application's root folder for the installed files if it were installed (e.g. "C:\Program Files (x86)\MyAppInstalllocation").
VirtualMachineVirtualMachine [省略可能] 変換がローカルの仮想マシン上で実行されるよう指定する要素。[optional] An element to specify that the conversion will be run on a local Virtual Machine.
VirtualMachine:: NameVirtualMachine::Name 変換環境に使用する仮想マシンの名前。The name of the virtual machine to be used for the conversion environment.
VirtualMachine::UsernameVirtualMachine::Username 変換環境に使用する仮想マシンのユーザー名。The user name for the virtual machine to be used for the conversion environment.
RemoteMachineRemoteMachine optional変換がリモートコンピューターで実行されることを指定する要素。[optional] An element to specify that the conversion will be run on a remote machine. テンプレートスキーマの v2 が必要です。Requires v2 of the template schema.
RemoteMachine:: ComputerNameRemoteMachine:: ComputerName 変換環境に使用するリモートコンピューターの名前。The name of the remote machine to be used for the conversion environment. テンプレートスキーマの v2 が必要です。Requires v2 of the template schema.
RemoteMachine:: UsernameRemoteMachine:: Username 変換環境に使用するリモートコンピューターのユーザー名。The user name for the remote machine to be used for the conversion environment. テンプレートスキーマの v2 が必要です。Requires v2 of the template schema.
RemoteMachine:: EnableAutoLogonRemoteMachine:: EnableAutoLogon optionalこれにより、リモートコンピューターで再起動が必要な変換を実行したときに、自動的に再度ログインが行われ、変換がシームレスに続行されます。[optional] This will auto log you back in when performing a conversion that requires a restart on a remote machine so your conversion continues seamlessly. テンプレートスキーマの V3 が必要です。Requires V3 of the template schema.
PackageInformation::PackageNamePackageInformation::PackageName MSIX パッケージのパッケージ名。The Package Name for your MSIX package.
PackageInformation::PackageDisplayNamePackageInformation::PackageDisplayName MSIX パッケージのパッケージ表示名。The Package Display Name for your MSIX package.
PackageInformation::PublisherNamePackageInformation::PublisherName MSIX パッケージの発行元。The Publisher for your MSIX package.
PackageInformation::PublisherDisplayNamePackageInformation::PublisherDisplayName MSIX パッケージの発行元表示名。The Publisher Display Name for your MSIX package.
PackageInformation::VersionPackageInformation::Version MSIX パッケージのバージョン番号。The version number for your MSIX package.
PackageInformation::P ackageDescriptionPackageInformation::PackageDescription optionalMSIX パッケージの説明。[optional] The description for your MSIX package. テンプレートスキーマの v4 が必要です。Requires v4 of the template schema.
PackageInformation:: MainPackageNameForModificationPackagePackageInformation:: MainPackageNameForModificationPackage [省略可能] メイン パッケージ名のパッケージ ID 名。[optional] The Package identity name of the main package name. これは、メイン (親) アプリケーションに依存する修正パッケージの作成時に使用されます。This is used when creating a modification package that takes a dependency on a main (parent) application.
SigningInformationSigningInformation optionalDevice Guard 署名の署名情報を指定する要素。[optional] An element to specify signing information for Device Guard signing. テンプレートスキーマの v4 が必要です。Requires v4 of the template schema.
SigningInformation:: Deviceguシャード署名SigningInformation:: DeviceGuardSigning optionalDevice Guard の署名情報を指定する要素。[optional] An element to specify Device Guard signing information. テンプレートスキーマの v4 が必要です。Requires v4 of the template schema.
Deviceguシャー署名:: TokenFileDeviceGuardSigning:: TokenFile JSON 形式で Device Guard の署名に必要な Azure AD アクセストークンThe Azure AD access token required for Device Guard signing in JSON format. V4 テンプレートスキーマが必要です。Requires v4 template schema.
Deviceguの署名:: TimestampUrlDeviceGuardSigning:: TimestampUrl optionalDevice Guard で署名するときにタイムスタンプを提供して、アプリケーションが証明書の有効期間を超えてインストールされるようにします。[optional] Provides a timestamp at the time of signing with Device Guard to ensure that your application will install beyond the lifetime of the certificate. テンプレートスキーマの v4 が必要です。Requires v4 of the template schema.
アプリケーションApplications [省略可能] MSIX パッケージでアプリケーション エントリを構成するための 0 個以上のアプリケーション要素。[optional] 0 or more Application elements to configure the Application entries in your MSIX package.
Application::IdApplication::Id MSIX アプリケーション用のアプリ ID。The App ID for your MSIX application. この ID は、指定の ExecutableName と一致するアプリケーション エントリが検出された場合に使用されます。This ID will be used for the Application entry detected that matches the specified ExecutableName. パッケージ内の実行可能ファイルには複数のアプリケーション ID の値を設定できます。You can have multiple Application ID values for executables in the package.

この値はパッケージ内におけるアプリケーションの一意の識別子です。This value is the unique identifier of the application within the package. この値は、パッケージ相対アプリ識別子 (PRAID) とも呼ばれます。This value is sometimes referred to as the package-relative app identifier (PRAID). ID はパッケージ内で一意である必要があります (同じパッケージ内では同じ ID は 1 つしか使用できません)。The ID must be unique within the package (the same ID cannot be used more than once in the same package). ただし、ID はグローバルに一意である必要はありません。However, the ID must not be unique globally. システム上には、同じ ID が使用されている別のパッケージが存在してもかまいません。There may be another package on the system that uses the same ID.

この文字列には、ピリオドで区切られた英数字フィールドが含まれています。This string contains alpha-numeric fields separated by periods. 各フィールドは、ASCII アルファベット文字で始まる必要があります。Each field must begin with an ASCII alphabetic character. これらをフィールド値として使用することはできません。 "CON"、"PRN"、"AUX"、"NUL"、"COM1"、"COM2"、"COM3"、"COM4"、"COM5"、"COM6"、"COM7"、"COM8"、"COM9"、"LPT1"、"LPT2"、""、"LPT4"、"LPT5"、"LPT6"、"LPT7"、"LPT8"、および "LPT9"。You cannot use these as field values: "CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8", and "LPT9".
Application::DisplayNameApplication::DisplayName MSIX パッケージのアプリ表示名。The App Display Name for your MSIX package. この表示名は、指定の ExecutableName と一致するアプリケーション エントリが検出された場合に使用されます。This Display Name will be used for the application entry detected that matches the specified ExecutableName
Application::ExecutableNameApplication::ExecutableName パッケージ マニフェストに追加される MSIX アプリケーションの実行可能ファイル名。The executable name for the MSIX application that will be added to the package manifest. この名前の付いたアプリケーションが検出されない場合、対応するアプリケーション エントリは無視されます。The corresponding application entry will be ignored if no application with this name is detected.
Application::DescriptionApplication::Description [省略可能] MSIX アプリケーション用のアプリの説明。[optional] The App Description for your MSIX application. 使用しない場合は、アプリケーションの表示名が使用されます。If not used, the Application DisplayName will be used. この説明は、指定の ExecutableName と一致するアプリケーション エントリが検出された場合に使用されます。This description will be used for the application entry detected that matches the specified ExecutableName
機能Capabilities [省略可能] MSIX パッケージにカスタム機能を追加するための 0 個以上の機能要素。[optional] 0 or more Capability elements to add custom capabilities to your MSIX package. 既定では、変換中に "runFullTrust" 機能が追加されます。“runFullTrust” capability is added by default during conversion.
Capability::NameCapability::Name MSIX パッケージに追加する機能。The capability to add to your MSIX package.

変換テンプレートファイルのサンプルSample conversion template file

<MsixPackagingToolTemplate
    xmlns="http://schemas.microsoft.com/appx/msixpackagingtool/template/2018"
    xmlns:V2="http://schemas.microsoft.com/msix/msixpackagingtool/template/1904"
    xmlns:V3="http://schemas.microsoft.com/msix/msixpackagingtool/template/1907"
    xmlns:V4="http://schemas.microsoft.com/msix/msixpackagingtool/template/1910"
    xmlns:V5="http://schemas.microsoft.com/msix/msixpackagingtool/template/2001">
<!--Note: You only need to include xmlns:v2 - xmlns:v5 if you are using one of the features that use those schemas -->

    <Settings
        AllowTelemetry="true"
        ApplyAllPrepareComputerFixes="true"
        GenerateCommandLineFile="true"
        AllowPromptForPassword="false" 
        EnforceMicrosoftStoreVersioningRequirements="false"
        v2:ServerPortNumber="1599"
        v5:AddPackageIntegrity="true">    

    <!--Note: Exclusion items are optional and if declared take precedence over the default tool exclusion items
        <ExclusionItems>
            <FileExclusion ExcludePath="[{CryptoKeys}]" />
            <FileExclusion ExcludePath="[{Common AppData}]\Microsoft\Crypto" />
            <FileExclusion ExcludePath="[{Common AppData}]\Microsoft\Search\Data" />
            <FileExclusion ExcludePath="[{Cookies}]" />
            <FileExclusion ExcludePath="[{History}]" />
            <FileExclusion ExcludePath="[{Cache}]" />
            <FileExclusion ExcludePath="[{Personal}]" />
            <FileExclusion ExcludePath="[{Profile}]\Local Settings" />
            <FileExclusion ExcludePath="[{Profile}]\NTUSER.DAT.LOG1" />
            <FileExclusion ExcludePath="[{Profile}]\ NTUSER.DAT.LOG2" />
            <FileExclusion ExcludePath="[{Recent}]" />
            <FileExclusion ExcludePath="[{Windows}]\debug" />
            <FileExclusion ExcludePath="[{Windows}]\Logs\CBS" />
            <FileExclusion ExcludePath="[{Windows}]\Temp" />
            <FileExclusion ExcludePath="[{Windows}]\WinSxS\ManifestCache" />
            <FileExclusion ExcludePath="[{Windows}]\WindowsUpdate.log" />
        <FileExclusion ExcludePath="[{Windows}]\Installer" />
            <FileExclusion ExcludePath="[{AppVPackageDrive}]\$Recycle.Bin " />
            <FileExclusion ExcludePath="[{AppVPackageDrive}]\System Volume Information" />
        <FileExclusion ExcludePath="[{AppVPackageDrive}]\Config.Msi" />
            <FileExclusion ExcludePath="[{AppData}]\Microsoft\AppV" />
            <FileExclusion ExcludePath="[{Common AppData}]\Microsoft\Microsoft Security Client" />
            <FileExclusion ExcludePath="[{Common AppData}]\Microsoft\Microsoft Antimalware" />
            <FileExclusion ExcludePath="[{Common AppData}]\Microsoft\Windows Defender" />
            <FileExclusion ExcludePath="[{ProgramFiles}]\Microsoft Security Client" />
            <FileExclusion ExcludePath="[{ProgramFiles}]\Windows Defender" />
        <FileExclusion ExcludePath="[{ProgramFiles}]\WindowsApps" />
            <FileExclusion ExcludePath="[{Local AppData}]\Temp" />
        <FileExclusion ExcludePath="[{Local AppData}]\Microsoft\Windows" />
        <FileExclusion ExcludePath="[{Local AppData}]\Packages" />

            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Wow6432Node\Microsoft\Cryptography" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Microsoft\Cryptography" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Microsoft\Microsoft Antimalware" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Microsoft\Microsoft Antimalware Setup" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Microsoft\Microsoft Security Client" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Policies\Microsoft\Microsoft Antimalware" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" />
            <RegistryExclusion ExcludePath= "REGISTRY\USER\[{AppVCurrentUserSID}]\Software\Microsoft\Windows\CurrentVersion\Explorer\StreamMRU" />
            <RegistryExclusion ExcludePath= "REGISTRY\USER\[{AppVCurrentUserSID}]\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\StreamMRU" />
            <RegistryExclusion ExcludePath= "REGISTRY\USER\[{AppVCurrentUserSID}]\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams" />
            <RegistryExclusion ExcludePath= "REGISTRY\USER\[{AppVCurrentUserSID}]\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Streams" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Microsoft\AppV" />
            <RegistryExclusion ExcludePath= "REGISTRY\MACHINE\SOFTWARE\Wow6432Node\Microsoft\AppV" />
            <RegistryExclusion ExcludePath= "REGISTRY\USER\[{AppVCurrentUserSID}]\Software\Microsoft\AppV" />
            <RegistryExclusion ExcludePath= "REGISTRY\USER\[{AppVCurrentUserSID}]\Software\Wow6432Node\Microsoft\AppV" />
        </ExclusionItems>
    -->
    
    <!--Note: Specifying an installer exit code will allow you to automatically trigger a reboot during your conversion
      <v2:ValidInstallerExitCodes>
        <V2:ValidInstallerExitCode ExitCode="3010" V3:Reboot="true"/>
        <V2:ValidInstallerExitCode ExitCode="1641"/>
      </v2:ValidInstallerExitCodes>
    -->
        
    </Settings>

    <!--Note: this section takes precedence over the Settings::ApplyAllPrepareComputerFixes attribute and is optional
    <PrepareComputer
        DisableDefragService="true"
        DisableWindowsSearchService="true"
        DisableSmsHostService="true"
        DisableWindowsUpdateService="true"/>
    -->

    <SaveLocation
        PackagePath="C:\users\user\Desktop\MyPackage.msix" 
        TemplatePath="C:\users\user\Desktop\MyTemplate.xml" />

    <Installer
        Path="C:\MyAppInstaller.msi"
        InstallLocation="C:\Program Files\MyAppInstallLocation" />
    
    <!--NOTE: This section specifies that the conversion will be run on a local Virtual Machine. This is optional if you want to change your conversion environment from the default local machine.
    <VirtualMachine Name="vmname" Username="vmusername"/>
    -->

    <!--NOTE: This section specifies that the conversion will be run on a remote machine.This is optional if you want to change your conversion environment from the default local machine.
    <v2:RemoteMachine ComputerName="vmname" Username="vmusername" v3:EnableAutoLogon="true"/>
    -->

    <PackageInformation
        PackageName="MyAppPackageName"
        PackageDisplayName="MyApp Display Name"
        PublisherName="CN=MyPublisher"
        PublisherDisplayName="MyPublisher Display Name"
        Version="1.1.0.0"
        MainPackageNameForModificationPackage="MainPackageIdentityName">

    <!--Note: This is optional, if you want to sign your package with Device Guard signing
        <v4:SigningInformation>
            <v4:DeviceGuardSigning
                Tokenfile="tokenfile.json"
                TimestampUrl="https://mytimestamp.com"/>
        </v4:SigningInformation>
    -->
        
    <!--NOTE: This ID will be used if the Application entry detected matches the specified ExecutableName
        <Applications>
            <Application
                Id="MyApp1"
                Description="MyApp"
                DisplayName="My App"
                ExecutableName="MyApp.exe"/>
        </Applications>
    -->

    <!--NOTE: This is optional as “runFullTrust” capability is added by default during conversion
        <Capabilities>
            <Capability Name="runFullTrust" />
        </Capabilities>
    -->
        
    </PackageInformation>
</MsixPackagingToolTemplate>