> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Using tools without installing the Microsoft Game Development Kit (GDK)

> Describes the process of using tools without installing the Microsoft Game Development Kit (GDK).

This topic covers the steps that are required to use the Microsoft Game Development Kit (GDK) tools from the extracted location. As noted in the initial extraction document, this is focused on primarily enabling build scenarios. There's no guarantee around support for all actions across all tools.

## Command prompt and command-line builds

Most command prompt actions are expected to work. Using a command prompt configured to run overridden environment variables provides the highest chance of this being the case.

For more details about how to configure build environments and command prompts, see [Configuring the build environment without installing the Microsoft Game Development Kit](https://learn.microsoft.com/en-us/gaming/gdk/docs/gdk-dev/console-dev/usingwithoutinstall/build-environment-withoutinstall).

After this is configured, builds via MSBuild execution use overridden environment variables to point to the extracted file locations.

## XbtpLinkSvc setup

The XBOX transfer protocol service ([XbtpLinkSvc (NDA topic)](https://learn.microsoft.com/en-us/gaming/gdk/docs/tools/tools-console/commandlinetools/xbtplinksvc)) coordinates fast transfer of data between a development PC and the development console.

XbtpLinkSvc needs to be registered and started to enable the expected deployment behavior from the extracted location. To do this, run the following commands from the Microsoft GDK\bin directory.

```cmd theme={null}
XbtpLinkSvc.exe /register /f 
XbtpLinkSvc.exe /routing
```

The **/register** command configures the service for use. The **/routing** command launches the service.

### Firewall setup

You might encounter firewall notifications for XbtpLinkSvc.exe accepting incoming connections on TCP port 4201 from consoles. Allowing XbtpLinkSvc.exe to accept incoming connections provides a much better experience. If network policy restricts incoming connections to XbtpLinkSvc.exe, **xbconnect /data** needs to be executed often for each console to ensure a PC-initiated connection has been made to the console. Allowing these incoming connections enables consoles to initiate on-demand connections to the PC.

A suitable firewall rule named "XBOX Transport Link Service (inbound)" can be added to the Windows Firewall by using the following command from an elevated command prompt:

```cmd theme={null}
netsh advfirewall firewall add rule name="Xbox Transport Link Service (inbound)" dir=in action=allow protocol=tcp localport=4201
```

### Add Windows Defender exclusion

By default, Windows Defender may terminate deployment connections set up by XbtpLinkSvc. The Microsoft Game Development Kit (GDK) installer includes a step to add a Windows Defender exclusion to prevent this.

You can manually add this exclusion by using the PowerShell command [Add-MpPreference](https://learn.microsoft.com/powershell/module/defender/add-mppreference?view=windowsserver2022-ps):

```powershell theme={null}
Add-MpPreference -ExclusionProcess "xbtplinksvc.exe"
```

To remove this exclusion, use the PowerShell command [Remove-MpPreference](https://learn.microsoft.com/powershell/module/defender/remove-mppreference?view=windowsserver2022-ps):

```powershell theme={null}
Remove-MpPreference -ExclusionProcess "xbtplinksvc.exe"
```

### Changing the extracted directory

If the Microsoft Game Development Kit (GDK) location changes, XbtpLinkSvc will need to be re-registered, the task killed, and restarted. To do so, run the following commands from the Microsoft GDK\bin directory (of the new Microsoft Game Development Kit (GDK) location).

```cmd theme={null}
XbtpLinkSvc.exe /register /f  
taskkill /im XbtpLinkSvc.exe /f  
XbtpLinkSvc.exe /routing
```

This will properly restart the service in the new extracted location.

## See also

[Using the Microsoft Game Development Kit without installation](https://docs.xbox.com/build/console-features/build-without-install/gc-usingwithoutinstall-toc.md)

[Using the Microsoft Game Development Kit to configure, build, and deploy XBOX projects (NDA topic)](https://learn.microsoft.com/en-us/gaming/gdk/docs/archive/gc-usinggsdk-toc)


## Related topics

- [Using the Microsoft Game Development Kit without installation (contents)](https://docs.xbox.com/build/console-features/build-without-install/gc-usingwithoutinstall-toc.md)
- [Using Clang with the Microsoft Game Development Kit (GDK)](https://docs.xbox.com/tools/tools-pc/visualstudio/gr-vs-clang.md)
- [Extracting the Microsoft Game Development Kit (GDK) setup payload](https://docs.xbox.com/build/console-features/build-without-install/extract-setup-payload.md)
- [Using Clang with the Microsoft Game Development Kit (GDK) for consoles](https://docs.xbox.com/tools/tools-console/visualstudio/vs-clang.md)
- [Utilizing Microsoft Game Development Kit (GDK) tools to install and launch your PC title](https://docs.xbox.com/tools/tools-pc/launching-on-pc.md)
