API Compatibility Between Xbox One XDK, Microsoft Store apps, and Win32 desktop programs

If you are writing code that targets multiple platforms, it is important to know which APIs are available for each platform. This topic provides a general comparison of API surface areas between Xbox One XDK, Microsoft Store apps, and Win32 desktop programs.

The following table lists the APIs that are available on each platform.

API Xbox One XDK Microsoft Store apps / Universal Windows Platform (UWP) Win32 desktop (x86/x64)
Standard C++ 11/C++14 Library (STL) Supported Supported Supported
Windows Runtime Library (WRL) Partially supported (ComPtr, etc.) Supported Partially supported (ComPtr, etc.)
C++/CX (/ZW) Supported Supported Not supported
C++/WinRT Supported (March 2017 XDK or later) Supported Not supported
C++ AMP Supported Supported Supported
OpenMP Supported Supported Supported
ConcRT/Parallel Patterns Library (PPL) Supported except for schedule groups and contexts Supported except for schedule groups and contexts Supported
ATL Not supported Not supported Supported
MFC Not supported Not supported Supported
Direct3D Supports Direct3D 11.1 with Hardware Feature Level 11.1 and Direct3D 12 with Hardware Feature Level 12.0 Supported; supports Direct3D 11.2 on Windows 8.1; supports Direct3D 12 on Windows 10 Supported; supports Direct3D 11.2 on Windows 8.1; supports Direct3D 12 on Windows 10
DXGI Supports DXGI 1.2 Supported; supports DXGI 1.3 on Windows 8.1 Supported; supports DXGI 1.3 on Windows 8.1
OpenGL Not supported Not supported Supported; requires ICD
OpenGL ES Not supported Supported through ANGLE Supported through ANGLE
XAML Not supported Supported Not supported
D3DCompile Supported Supported Supported
DirectXMath Supported Supported Supported
XAudio2 Supports xWMA and XMA2 Supported Supported
WASAPI Supported Supported Supported
XINPUT Not supported Supported Supported
Windows Imaging Component (WIC) WIC2 supported except for HD Photo and JPEG-XR; no support for metadata query language WIC2 supported Supported; WIC2 supported on Windows 7 SP1 with KB 2670838 update, Windows 8.x, and Windows 10
Windows Media Foundation Supports MP4, AAC, and H.264 Supported Supported
DirectShow Not supported Not supported Supported
CreateThread, SetThreadAffinity, Sleep, SleepEx, TlsAlloc Supported Supported for UWP Supported
CreateProcess, GetCommandLine Supported Not supported Supported
HeapAlloc Supported Supported Supported
VirtualAlloc Supported Supported for UWP Supported
WinSock 2.x Supported Supported; requires Windows 8.1 with Visual Studio 2013 Update 4 tools Supported
QueryPerformanceCounter, QueryPerformanceFrequency, GetTickCount, GetTickCount64 Supported Supported except for GetTickCount Supported
Windows.ApplicationModel Partially supported Supported Not supported
Windows.Data Partially supported Supported Partially supported
Windows.Devices Partially supported Supported Partially supported
Windows.Foundation Partially supported Supported Partially supported
Windows.Globalization Not supported Supported Partially supported
Windows.Graphics Not supported Supported Not supported
Windows.Management Not supported Supported Not supported
Windows.Media Partially supported Supported Partially supported
Windows.Networking Partially supported Supported Partially supported
Windows.Security Not supported Supported Partially supported
Windows.Storage Partially supported Supported Partially supported
Windows.System Partially supported Supported Partially supported
Windows.UI Partially supported Supported Not supported
Windows.Web Partially supported Supported Partially supported
Windows.Kinect Supported Not supported Not supported
Windows.Xbox Supported Not supported Not supported

See also

Getting Started with Xbox One Development