After what seemed like forever, File Explorer tabs are finally available for everyone with the first feature for Windows 11 version 22H2, aka the 2022 update. To be precise, Microsoft added the feature tabbed interface in the Windows codebase some time ago, but the actual availability has been conveyed to users based on several factors, such as update channel and server-side A/B testing. In fact, much like the tabbed File Explorer, most experimental features are now pushed to Windows through a central operating system component called the Windows Feature Store that controls rolling rollout.
Since the Windows Feature Store is heavily protected by the Windows kernel, you cannot use typical binary patching techniques to force-enable these features. That’s where ViVeTool comes in. Even if you’re not a developer reading this article, chances are you’ve probably used ViVeTool once or twice to get some features before the public rollout. But that’s not all the Windows Feature Store can handle. Here’s how to activate ViveTool.
What is the Windows Feature Store?
In Microsoft nomenclature, a “feature” in a modern Windows operating system is a change to the user interface and/or UX – from redesigning the Open With menu to entering Task Manager in the context menu of the taskbar. As mentioned earlier, the feature A/B experimentation mechanism found in Windows 10 and newer is controlled by the Windows Feature Store. This store (internally called “Velocity”) is part of the mostly undocumented Windows Notification Feature (WNF), a kernel component used to send notifications through the system, including other kernel components. , system services and user space applications.
Most experimental features are now pushed to Windows through a central operating system component called the Windows Feature Store that controls the rolling rollout.
Building the modular infrastructure of various features is essentially a way to design a controlled deployment model. For example, the Windows Insider Program is used to deliver work-in-progress features to previous updates, which are then patched incrementally and then enabled for each user once they reach the stability milestone. In the event that a particular feature contains a catastrophic bug or has a security flaw, it can be transparently disabled by the kernel.
Can we bypass server-side A/B testing?
Keep in mind that Insider and stable builds usually ship with a plethora of “features” corresponding to new features coming in an inactive state. Aside from the control aspect of deployment, remotely orchestrated A/B testing (also known as split testing) can ensure continuous improvement and rapid feedback loops across multiple configurations. The Windows Feature Store protects the process of random experimentation by protecting feature switch states.
Fortunately, it is possible to manipulate the data stored in the Windows Feature Store. A number of talented developers have successfully reverse-engineered Windows’ internal feature control APIs. To access the Windows Feature Store, you can use apps like Rafael Rivera’s Mach2 or Lucas’ ViVeTool (aka thebookisclosed) and completely bypass server-side A/B testing.
In some cases, you may be able to modify the registry —
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFeatureManagementOverrides section to be precise – to edit feature store variables. However, we recommend that you stick to changing the state of ID-specific features to avoid unforeseen circumstances.
Each feature in the Windows Feature Store has a unique ID, such as 26008830 is for tablet-optimized taskbar. There are three states for each Feature ID:
- Default (0): This is the normal behavior for a particular feature.
- Disabled (1): This will completely disable the feature.
- Enabled (2): This will forcefully enable the feature.
The Mach2 developer maintains a list of Feature IDs for each Insider build. The repository also contains changes between releases, which can be helpful in identifying hidden new features. You can also use a graphical fork of ViVeTool named ViVeTool GUI to search through available Feature IDs for any version of Windows.
Tinkering with feature IDs can lead to instability or crashes. Due to interdependencies, some can break core operating system modules and render Windows completely unusable. You may also come across some feature IDs, which make permanent changes that you cannot undo. Proceed at your own risk.
Due to the correlation between the Windows Update mechanism and the Windows Feature Store, changing some features may be enough to put your device into an unsupported state. It is highly recommended to make an image backup before choosing to experiment with the Windows Feature Store. Alternatively, just test in a virtual machine.
Below is a list of some popular Windows features and their corresponding Feature IDs.
|Description of functions||Feature ID||Minimum version of Windows|
|Tabs in File Explorer||37634385||21536|
|Taskbar optimized for tablets||26008830||25197|
|Revamped Widgets UI||40772499||25227, 22623.746|
|New system tray||38764045||25211|
|Widget settings menu||38652916||25217|
|Search bar in Task Manager||39420424||25231|
|desktop search bar||37969115||25120|
|Animated Navigation Panel Icons in Settings||34878152||25197|
|Modern “Open with” menu||36302090||25151, 22622.290|
ViVeTool is an open-source CLI tool for feature manipulation. Under the hood, it’s powered by a C# library called ViVe. If you want to try out a new feature on your Windows 11 instance, you should follow the steps outlined below:
- Download the latest version of ViVeTool from its GitHub repository.
- Extract archive in a convenient place.
- press the Windows key + X on your keyboard and select Terminal (administrator) to launch an elevated shell window. You can also use PowerShell if you prefer, or stick with the old command prompt with elevated privileges.
- Change the directory to extracted ViVeTool directory. For example, if you extracted ViveTool to D:ViveTool, type
- Locate the Feature ID corresponding to the feature you want to enable in the table above. Then run the command:
vivetool /enable /id:xxx
- If all goes well, you should see “Successfully configure features” in the console.
- Close the console window and restart your computer for the changes to take effect.
If you change your mind and want to undo the changes, repeat the steps above and replace
/disable in the commands in step 5.
ViVeTool is literally the “Swiss army knife” when it comes to Windows feature control APIs. In addition to switching Windows feature state, it can query existing feature configurations of the underlying version of Windows, import/export/reset custom configurations, and even help identify the last known good state of the restore system. .
To learn more, open a Terminal window and run the ViveTool executable without any arguments. The app will list all the commands and their usage. This includes enabling or disabling a feature and listing existing feature configurations.
Are you happy with the new UI/UX improvements in Windows 11 or are you considering downgrading to the previous version? Let us know what you think in the comments.