Alternatives to Windows APIs in Universal Windows Platform (UWP) apps
Learn which features of the Windows API can be used in a Universal Windows Platform (UWP) app and which APIs to use as alternatives for those that cannot.
None of the existing app installation APIs are supported in a UWP app. Here's some alternatives to the app installation APIs:
A subset of the device APIs is supported in a UWP app.
For device APIs that cannot be used in a UWP app, here are some alternatives.
|Device enumeration (Function Discovery, PnP-X, WSD)||Windows.Devices.Enumeration|
|Serial and parallel ports||Windows.Devices.SerialCommunication|
|Windows Portable Devices||Windows.Devices.Portable|
Subsets of these graphics APIs are at least partially supported in a UWP app:
- Direct3D 11
Here are some alternatives:
Subsets of these multimedia APIs are at least partially supported in a UWP app:
- Core audio
- Media Playback
- Media Foundation
- Windows Audio Session API (WASAPI)
For more information on API that are available for UWP apps, see Audio, video, and camera
Subsets of these networking APIs are at least partially supported in a UWP app:
- Mobile Broadband
- Windows Sockets (Winsock)
- Windows Web Services
Here's some alternatives to networking APIs that cannot be used in a UWP app.
Printing and documents
A subset of the printing and documents APIs is supported in a UWP app.
When designing a UWP app, you'll want to provide the best printing experience:
None of the existing security APIs are supported in a UWP app. Here's some alternatives to the security APIs:
Subsets of these storage APIs are at least partially supported in a UWP app:
- Directory create, delete, and enumerate
- File mapping
Here's some alternatives to Win32 storage APIs that cannot be used in a UWP app.
|File copy, move, and replace||Windows.Storage.StorageFile|
|Directory create, delete, and enumerate||Windows.Storage.StorageFolder|
|Management (mount points, format, quotas)||none|
Subsets of these system APIs are at least partially supported in a UWP app:
- Heap API, thread local storage (TLS)
- Last error
Here's some alternatives to system APIs that cannot be used in a UWP app.
|Console||Create a UWP Console App|
|Memory manager||Heap API|
|Named pipes||Interprocess Communications|
Subsets of these user interface APIs are at least partially supported in a UWP app:
- National Language Support (NLS)
- Strsafe functions
- Text Services Framework (TSF)
- UI automation
- Windows Animation Manager
Here's some alternatives to user interface APIs that cannot be used in a UWP app.
|Common controls||HTML, XAML|
|File Open, File Save||Windows.Storage.Pickers.FileOpenPicker
|Theming||HTML, CSS, XAML|
|User: carets||framework or app to draw|
|User: controls||HTML, XAML|
|User: high DPI||apps are DPI aware|
|User: icons||apps represented by tiles|
|User: keyboard accel||Windows.UI.Core.CoreAcceleratorKeys|
|User: keyboard input||Windows.Devices.Input|
|User: MDI||TabView XAML Control, AppWindow|
|User: messages||events and notifications|
|User: mouse input||Windows.Devices.Input|
|User: multimon||single monitor|
|User: strings||strsafe functions|
|Windows Animation Manager||Windows.UI.Core.AnimationMetrics|
|Windows Ribbon||HTML, XAML|