Application Management (wdapp.exe)

Application Management (wdapp.exe) is a command-line tool that installs and launches PC Microsoft Game Development Kit (GDK) titles. You can install and test both MSIXVC and MSIXVC2 packages with the wdapp install command.

Important

wdapp requires Developer Mode to be enabled in Windows Settings. If Developer Mode is not enabled, the tool will return an error. To enable it, go to Settings > For developers and toggle Developer Mode on.

wdapp provides the following subcommands.

Command Description
wdapp ids Displays details about package and application identifiers.
wdapp launch Launches an application by AUMID or executable path.
wdapp terminate Terminates the specified package. This only works for MSIXVC installed packages.
wdapp list Lists all sideloaded applications on the PC.
wdapp listdlc Lists all installed and deployed downloadable-content packages.
wdapp gamefolder Queries or sets the install folder for a drive.
wdapp update Streams a packaged build update from a network share or local system file path.
wdapp install Installs an application package created with makepkg through streaming installation.
wdapp register Registers the application in the specified folder.
wdapp uninstall Terminates and deregisters all the processes in the package.
wdapp unregister Unregisters an application.
wdapp migrate Migrates an MSIXVC install to Flat File Install format.
wdapp feedback Opens the Feedback Hub to report a bug or suggestion.

Deploying, installing, updating, listing, and removing applications

wdapp ids

Displays details about package and application identifiers, including the Package Family Name (PFN) and Application User Model ID (AUMID). This is useful for debugging package identity issues.

wdapp ids

This command takes no arguments. It prints information about identifiers used by other wdapp commands such as launch and terminate.

Return to the top of this article.

wdapp launch

Launches an application by AUMID or executable path.

wdapp launch AUMID | Executable

Option

Description

AUMIDSpecifies the AUMID of the application to launch. Use either the AUMID or the Executable option, but not both.
ExecutableSpecifies the path to the executable of the application to launch. Use either the AUMID or the Executable option, but not both.
WaitToExitBlocks until the title exits, then returns the title's exit code.
logRedirects stdout and stderr to files on the scratch drive. If no prefix is specified, files are named latest_stdout.txt and latest_stderr.txt. The prefix is truncated if longer than 32 characters.
show all | launchResult | terminateResult | targetTerminateReason | exitCode all - Shows all results.

launchResult - The reason the game failed to launch. If this is S_OK, the game launched successfully.

terminateResult - The reason the terminated state was reached. If this is S_OK, termination was reached gracefully through proper Process Lifetime Management (PLM) flow.

targetTerminateReason - If available, why termination was targeted. Otherwise, S_FALSE.

exitCode - The exit code returned by the game on process exit. Controls what is shown when the game exits while using the WaitToExit argument.

Return to the top of this article.

wdapp terminate

Terminates the specified package. This only works for MSIXVC installed packages.

wdapp terminate AUMID | PackageFullName

Option

Description

AUMIDSpecifies the AUMID (AppUserModelId) of the application to terminate. Use either the AUMID or the PackageFullName option, but not both.
PackageFullNameSpecifies the PackageFullName of the application to terminate. Use either the AUMID or the PackageFullName option, but not both.

Return to the top of this article.

wdapp list

Lists all sideloaded applications on the PC.

wdapp list

Option

Description

/dProvides detailed information about the listed packages.
/jsonFormats the response in JSON.
/includeStoreIncludes packages installed from the Microsoft Store or Xbox App in the results. By default, only sideloaded development packages are shown.

Return to the top of this article.

wdapp listdlc

Lists all installed and deployed downloadable-content packages.

wdapp listdlc

Option

Description
/dProvides detailed information about the listed DLC packages.
/jsonFormats the response in JSON.
/includeStoreIncludes DLC packages installed from the Microsoft Store or Xbox App in the results. By default, only sideloaded development DLC packages are shown.

Return to the top of this article.

wdapp gamefolder

wdapp gamefolder <DriveLetter>: [/set <FolderPath>]

Option

Description

<DriveLetter>:Specifies the target drive the streaming install happens on. Defaults to OS drive in a root folder called XboxGames.
/setSets up the streaming install folder for the drive specified in <DriveLetter>. Defaults to XboxGames.

Return to the top of this article.

wdapp update

wdapp update packagepath [/l|/AllChunks] [/b] [/a] [/m] [/ContentTypes=[semicolon-delimited specifier list]] [/Languages=[semicolon-delimited specifier list]] [/Devices=[semicolon-delimited specifier list]] [/Tags=[semicolon-delimited specifier list]] [/Recipes=[semicolon-delimited specifier list]] [/Features=[semicolon-delimited specifier list]]

Option

Description

packagepathSpecifies the path to the package file that's used for the update.
/lSpecifies that the update stops after the launch chunk is received.
/AllChunksForcefully installs all chunks, even if they're unchanged.
/bSpecifies whether the update is allowed to go backward to a previous version.
/aRegisters the update as available.
/mRegisters the update as mandatory.
/ContentTypes=[semicolon-delimited specifier list]Sets which content types to update by default.
/Languages=[semicolon-delimited specifier list]Sets which languages to update by default.
/Devices=[semicolon-delimited specifier list]Sets which devices to update by default.
/Tags=[semicolon-delimited specifier list]Sets which tags to update by default. Use '/Tags=' to clear all tags.
/Recipes=[semicolon-delimited specifier list]Sets which recipes to update by default. Can't be used with /Tags.
/Features=[semicolon-delimited specifier list]Sets which features to update by default. Can't be used with /Tags.

Return to the top of this article.

wdapp install

Installs an application package created with makepkg through streaming installation.

The install command mirrors the streaming installation process that occurs when an application is installed on a retail PC.

For more information about testing streaming installation packages, see Streaming Installation and Intelligent Delivery: an overview.

wdapp install [/l|/AllChunks] [/bootstrapper] [/drive=[drive letter]] [ /ContentTypes=[semicolon-delimited specifier list]] [/Languages=[semicolon-delimited specifier list]] [/Devices=[semicolon-delimited specifier list]] [/Tags=[semicolon-delimited specifier list]] [/Drive [Optional]] [/tm] [/l] [/v] [/w]] { packagepath | packageURI }
Option Description
/bootstrapper Invokes the PC Bootstrapper when the game launches. The title runs as if it were a standard retail install, with the PC Bootstrapper invoked before the application runs any code. The application appears as a child process of the PC Bootstrapper. If this flag isn't set, prerequisite checks are invoked when the applicable runtime calls are made (for example, XUserAddAsync for sign-in validation).
/Features=[semicolon-delimited list of Features] Specifies which features to install by default. Can't be used with /Tags.
/Recipes=[semicolon-delimited list of Recipes] Specifies which recipes to install by default. Can't be used with /Tags.
{ packagepath | packageURI } Specifies the location of the application package by providing either packagepath, which is a path on the development computer, or packageURI, which is a URI. To install from a burned optical disc (DVD or Blu-ray Disc), the xo:\ drive prefix followed by the file name can be provided to wdapp install:wdapp install /w xo:\packagepath
/Languages=[semicolon-delimited specifier list] Sets which languages to install by default.
/Devices=[semicolon-delimited specifier list] Sets which devices to install by default.
/Tags=[semicolon-delimited specifier list] Sets which tags to install by default. Use '/Tags=' to clear all tags.
/drive=[drive letter] Specifies the target drive that the application should be installed to instead of using the default.
/tm Prints a transfer performance metrics summary after all the files have been transferred.
/l Specifies that the installation stops after the launch chunk has been received.
/AllChunks Specifies that the installation will forcefully install all chunks.
/v Displays verbose messages.

Return to the top of this article.

wdapp register

Registers the application in the specified folder.

wdapp register folder_path

Option

Description

folder_path Specifies the folder path that contains the [MicrosoftGame.config](../../../features/common/game-config/MicrosoftGameConfig-toc.md) file to register the title from. This path is relative to the application root directory.

Return to the top of this article.

wdapp uninstall

Terminates and deregisters all the processes in the package.

wdapp uninstall package_full_name [/Languages=[list]] [/Devices=[list]] [/Tags=[list]] [/Features=[list]] [/ContentTypes=[list]]

Option

Description

package_full_name Specifies the full package name of the application. For example, mygame_1.0.0.0_neutral__r9wapr0zzdgy.
/Languages=[semicolon-delimited specifier list]Sets which languages to uninstall. When provided, only the specified language content is removed rather than the entire package.
/Devices=[semicolon-delimited specifier list]Sets which devices to uninstall.
/Tags=[semicolon-delimited specifier list]Sets which tags to uninstall. Use '/Tags=' to clear all tags.
/Features=[semicolon-delimited specifier list]Sets which features to uninstall. Can't be used with /Tags.
/ContentTypes=[semicolon-delimited specifier list]Sets which content types to uninstall.

Return to the top of this article.

wdapp unregister

Terminates and unregisters a package.

wdapp unregister package_full_name

Option

Description

package_full_name Specifies the full package name of the application. For example, mygame_1.0.0.0_neutral__r9wapr0zzdgy.

Return to the top of this article.

wdapp migrate

Migrates an existing MSIXVC install to the Flat File Install format when using the March 2022 Microsoft Game Development Kit (GDK) or later.

wdapp migrate <PackageFullName>

Option

Description

<PackageFullName>Specifies the full package name of the application. For example, mygame_1.0.0.0_neutral__r9wapr0zzdgy.

Return to the top of this article.

wdapp feedback

Opens the Feedback Hub to report an Xbox game development bug or suggestion.

wdapp feedback

Return to the top of this article.

Remarks

For more information about installing and launching PC Microsoft Game Development Kit (GDK) titles, see Using Microsoft Game Development Kit tools to install and launch your PC title.

See also

PC Command-line tools Flat File Install Overview Using Microsoft Game Development Kit tools to install and launch your PC title