Skip to content

Commit a02b389

Browse files
Merge pull request #6561 from MicrosoftDocs/main
Auto Publish – main to live - 2026-03-27 05:00 UTC
2 parents 258cfbb + dfd488d commit a02b389

15 files changed

Lines changed: 114 additions & 201 deletions

File tree

.openpublishing.redirection.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
{
22
"redirections": [
3+
{
4+
"source_path": "hub/apps/develop/windows-integration/settings-mcp.md",
5+
"redirect_url": "/windows/apps/develop/windows-integration/",
6+
"redirect_document_id": false
7+
},
38
{
49
"source_path": "hub/apps/windows-app-sdk/composition.md",
510
"redirect_url": "/windows/apps/develop/composition/visual-layer",

hub/apps/develop/ai-powered/ai-powered.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ This section provides guidance for using the Windows App SDK to create apps that
2020
| [Copilot hardware key](/windows/apps/develop/windows-integration/microsoft-copilot-key-provider) | Learn how to use the Copilot hardware key feature to quickly access Copilot. |
2121
| [Recall](/windows/apps/develop/windows-integration/recall/index) | Learn how to use the Recall feature to help find content. |
2222
| [Studio Effects](/windows/apps/develop/windows-integration/studio-effects) | Learn how to use Studio Effects to enhance video calls with AI-powered background effects. |
23-
| [Windows Settings connector](/windows/apps/develop/windows-integration/settings-mcp) | Learn how to use the Windows Settings connector via MCP to manage settings on a Windows device. |
2423

2524
## Other AI features
2625

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
title: Features for Windows app development
3+
description: Overview of the Windows app development features available to developers, including accessibility, AI, files, notifications, and more.
4+
ms.topic: overview
5+
ms.date: 03/26/2026
6+
ms.localizationpriority: medium
7+
---
8+
9+
# Features for Windows app development
10+
11+
Windows provides a rich set of platform features to help you build great apps. This section covers the APIs and capabilities available to Windows developers, from accessibility and AI to files, notifications, and the user interface.
12+
13+
Some features are available in the [Windows App SDK](../windows-app-sdk/index.md). Others come from the Windows OS itself, via APIs in the [Windows SDK](https://developer.microsoft.com/windows/downloads/windows-sdk) or .NET.
14+
15+
## Feature areas
16+
17+
| Feature area | Description |
18+
|---|---|
19+
| [Accessibility](accessibility.md) | Build accessible apps with support for assistive technologies, keyboard navigation, and high-contrast modes. |
20+
| [AI-powered features](ai-powered/ai-powered.md) | Integrate on-device AI capabilities including Recall, Studio Effects, Click to Do, and Copilot key support. |
21+
| [App lifecycle and system services](app-lifecycle-and-system-services.md) | Manage app launch, activation, background tasks, power management, and system-level services. |
22+
| [App restore](windows-app-restore.md) | Restore app state after a Windows restart so users can pick up where they left off. |
23+
| [Audio, video, and camera](audio-video-camera.md) | Capture photos and video, play back media, and access audio hardware. |
24+
| [Communication](communication/index.md) | Add messaging, contacts, and calendar integration to your app. |
25+
| [Data and files](data-and-files.md) | Read and write files, manage folders, access removable storage, and query file properties. |
26+
| [Devices and sensors](devices-and-sensors.md) | Access hardware devices, sensors, and peripherals. |
27+
| [Graphics](graphics.md) | Create 2D and 3D visuals using DirectX, Direct2D, and other graphics APIs. |
28+
| [Input and interactions](input/index.md) | Handle touch, pen, keyboard, mouse, speech, and other input modalities. |
29+
| [Notifications](notifications/index.md) | Send toast and tile notifications to keep users informed. |
30+
| [OS integration](windows-integration/index.md) | Connect your app to Windows shell features, settings, and system capabilities. |
31+
| [Performance](performance/index.md) | Analyze and optimize the performance and responsiveness of your app. |
32+
| [Security and identity](security/index.md) | Authenticate users, protect data, and manage app permissions. |
33+
| [Speech](speech.md) | Add voice input and text-to-speech synthesis to your app. |
34+
| [Testing](testing/index.md) | Test and debug your Windows app using platform tools and best practices. |
35+
| [User interface](user-interface.md) | Build rich user interfaces with WinUI, XAML, and other UI frameworks. |

hub/apps/develop/toc.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ items:
66
- name: Features
77
expanded: true
88
items:
9+
- name: Overview
10+
href: features-overview.md
911
- name: Accessibility
1012
href: accessibility.md
1113
- name: AI-powered features
@@ -37,8 +39,6 @@ items:
3739
href: windows-integration/recall/decrypt-exported-snapshots.md
3840
- name: Studio Effects
3941
href: windows-integration/studio-effects.md
40-
- name: Windows Settings connector
41-
href: windows-integration/settings-mcp.md
4242
- name: App lifecycle and system services
4343
items:
4444
- name: App lifecycle

hub/apps/develop/windows-integration/settings-mcp.md

Lines changed: 0 additions & 56 deletions
This file was deleted.

hub/apps/distribute-through-store/how-to-distribute-your-win32-app-through-microsoft-store.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ Let's explore each of these options in more detail in the following sections.
3535

3636
### Option 1 - Package your Win32 app as MSIX
3737

38-
Package your application into an MSIX is very simple, you can either use:
38+
To package your application into an MSIX, you can either use:
39+
3940
- Visual Studio by adding the project Windows Application Packaging to your solution. See [Set up your desktop application for MSIX packaging in Visual Studio](/windows/msix/desktop/desktop-to-uwp-packaging-dot-net).
4041
- Use installer solutions from one of our partners. See [Package a desktop app using third-party installers](/windows/msix/desktop/desktop-to-uwp-third-party-installer).
4142
- Microsoft MSIX Packaging Tool to create the MSIX from an existing installer. See [Create an MSIX package from any desktop installer (MSI, EXE, ClickOnce, or App-V)](/windows/msix/packaging-tool/create-app-package).

hub/apps/get-started/ai-setup.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,6 @@ Extend Copilot's context further with additional Windows-specific MCP servers:
127127

128128
| MCP Server | What it gives Copilot | URL / setup |
129129
|---|---|---|
130-
| Windows Settings | Read/write Windows Settings from Copilot | [Windows Settings connector](../develop/windows-integration/settings-mcp.md) |
131130
| Azure DevOps | Access work items, PRs, and builds | [Azure DevOps MCP Server](https://github.com/microsoft/azure-devops-mcp) |
132131

133132
---

hub/apps/publish/last-update-date.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ ms.localizationpriority: medium
99

1010
# What’s new: Last Updated Date in Microsoft Store
1111

12-
Microsoft Store now displays the Last updated date on your product page, giving customers greater visibility into your product’s maintenance and release cadence.
12+
13+
Microsoft Store will now display the Last updated date on your product page, giving customers greater visibility into your product’s maintenance and release cadence.
14+
1315
This date will reflect when your most recent package update became available to all Microsoft Store users.
1416

1517
The Last updated date will be shown for package updates going forward. As developers start making regular updates on Store, this date will automatically appear in the Additional info section of the product page. This will give potential users insight into whether an app is actively maintained. This added transparency will help users make more informed decisions and will give developer a simple way to showcase their ongoing commitment to app quality.

hub/dev-drive/index.md

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -141,9 +141,9 @@ A package cache is the global folder location used by applications to store file
141141

142142
- **NuGet global-packages folder**: The NuGet global-packages folder is used by dotnet, MSBuild, and Visual Studio. Create a user specific NuGet directory in your CopyOnWrite (CoW) filesystem. For example: `D:\<username>\.nuget\packages`. Use one of the following ways to change the global-packages folder from the default location to your newly created folder (to manage the globally installed packages):
143143

144-
- Set a global environment variable `NUGET_PACKAGES` to that path. For example: `setx /M NUGET_PACKAGES D:\<username>\.nuget\packages`.
145-
- Set `globalPackagesFolder`, when using `PackageReference`, or `repositoryPath`, when using `packages.config`, to that path in configuration settings.
144+
- Set `globalPackagesFolder`, when using `PackageReference`, or `repositoryPath`, when using `packages.config`, to that path in a [NuGet configuration file](/nuget/consume-packages/configuring-nuget-behavior). This is the recommended approach because the setting is scoped to the configuration file and won't override repository-specific settings the way an environment variable would.
146145
- Set the `RestorePackagesPath` MSBuild property (MSBuild only) to that path.
146+
- Set a global environment variable `NUGET_PACKAGES` to that path. For example: `setx /M NUGET_PACKAGES D:\<username>\.nuget\packages`. Note: this environment variable overrides any `globalPackagesFolder` setting in NuGet configuration files, including repository-specific settings.
147147

148148
To verify the global-packages folder, run the dotnet nuget locals command: `dotnet nuget locals global-packages --list`. The restore will install and download packages into the new path. The default NuGet global-packages folder can be deleted. Learn more in the [NuGet docs: Managing the global packages, cache, and temp folders](/nuget/consume-packages/managing-the-global-packages-and-cache-folders).
149149

@@ -250,7 +250,7 @@ The following examples demonstrate an administrator's ability to set filters all
250250
To use the `setfiltersallowed` command to allow `Filter-01` and `Filter-02` on all Dev Drives, use the command:
251251

252252
```powershell
253-
fsutil devdrv setfiltersallowed Filter-01, Filter-02
253+
fsutil devdrv setfiltersallowed "Filter-01, Filter-02"
254254
```
255255

256256
To display the filter attach policy for all Dev Drives, use the command:
@@ -292,7 +292,7 @@ The following filters may be used with Dev Drive:
292292
The `WdFilter` is attached by default. The following command is an example demonstrating how to attach all of these additional filters to a Dev Drive:
293293

294294
```powershell
295-
fsutil devdrv setfiltersallowed "PrjFlt, MsSecFlt, WdFilter, bindFlt, wcifs, FileInfo, ProcMon24"
295+
fsutil devdrv setfiltersallowed "PrjFlt, MsSecFlt, WdFilter, bindFlt, wcifs, FileInfo, ProcMon24, WinSetupMon, applockerfltr"
296296
```
297297

298298
> [!TIP]
@@ -310,7 +310,7 @@ Beginning in Windows 11 24H2 & Windows Server 2025, Block cloning is now support
310310
There are a few scenarios in which we do not recommend using a Dev Drive. These include:
311311

312312
- Reformatting an existing storage volume to be a "Dev Drive" will destroy any content stored in that volume. Reformatting an existing volume while preserving the content stored there is not supported.
313-
- When you create a Virtual Hard Disk (VHD) hosted on a fixed disk (HDD or SSD), it is not recommended to copy the VHD, move it to a different machine, and then continue using it as a Dev Drive.
313+
- When you create a Virtual Hard Disk (VHD) hosted on a fixed disk (HDD or SSD), it is not recommended to copy the VHD, move it to a different machine, and then continue using it as a Dev Drive. The Dev Drive designation (including trust status and filter policies) is stored per-machine and does not transfer with the VHD file. If you move a VHD to a new machine, you will need to re-mount it and [re-designate it as a Dev Drive](#create-dev-drive-using-existing-virtual-hard-disk-vhd-or-vhdx) and reconfigure any custom filter policies.
314314
- A volume stored on a removable or hot-pluggable disk (such as a USB, HDD, or SSD external drive) does not support designation as a Dev Drive.
315315
- A volume in a VHD hosted by a removable or hot-pluggable disk does not support designation as a Dev Drive.
316316
- The C: drive on your machine cannot be designated as a Dev Drive.
@@ -366,6 +366,9 @@ For more information, see the blog post: [Dev Drive for Performance Improvements
366366

367367
You can access Dev Drive project files, which run on the Windows file system, from a Linux distribution running via WSL. However, WSL runs in a VHD and for the best performance files should be stored on the Linux file system. WSL is out of the scope of Windows file system so you should not expect to see any performance improvement when accessing project files in Dev Drive from a Linux distribution running via WSL.
368368

369+
> [!NOTE]
370+
> The WSL `metadata` mount option, which uses extended attributes to store Linux file permissions and ownership on Windows-hosted files, is not supported on ReFS volumes (the filesystem used by Dev Drive). If your workflow depends on preserving Linux file permissions for files stored on the Windows filesystem, store those files on an NTFS volume or within the WSL virtual disk instead.
371+
369372
### What method is used to format a Windows storage volume?
370373

371374
See [`MSFT_Volume class`](/windows-hardware/drivers/storage/format-msft-volume) in the Windows Driver docs.
@@ -382,6 +385,16 @@ fsutil devdrv setfiltersallowed PrjFlt
382385

383386
Yes, the Dev Drive VHD will be included in the BitLocker encryption of the hosting volume. It is not necessary to enable BitLocker on the mounted VHD.
384387

388+
### How do I back up a Dev Drive?
389+
390+
The best backup approach depends on how your Dev Drive is set up:
391+
392+
- **VHD-based Dev Drive**: The VHD file (`.vhd` or `.vhdx`) can be backed up like any regular file. Copy it to an external drive, network share, or cloud storage. Note that the Dev Drive designation and filter policies are per-machine and won't transfer automatically — if you restore to a new machine, you'll need to [re-mount the VHD and re-designate it as a Dev Drive](#create-dev-drive-using-existing-virtual-hard-disk-vhd-or-vhdx).
393+
394+
- **Partition-based Dev Drive**: Use standard Windows backup tools such as [File History](https://support.microsoft.com/windows/back-up-your-windows-pc-87a81f8a-78fa-456e-b521-ac0560e32338) or [robocopy](/windows-server/administration/windows-commands/robocopy) to back up the contents. Cloud sync tools (OneDrive, etc.) can also back up individual files, though they may not preserve all Dev Drive-specific settings.
395+
396+
In both cases, the package caches stored on Dev Drive (npm, NuGet, pip, etc.) can typically be regenerated and do not need to be included in backups.
397+
385398
### Can Dev Drive make Java development faster on Windows?
386399

387400
Yes, using a Dev Drive can enhance efficiency and reduce build times when working on a Java development project. See the blog post ["Speed up your Java Development on Windows with Dev Drive"](https://devblogs.microsoft.com/java/speed-up-your-java-development-on-windows-with-microsoft-dev-drive/).

0 commit comments

Comments
 (0)