Seeker
Seeker

Reputation: 572

Install shell extension conditionally

Reference: Integrate a packaged desktop app with File Explorer https://learn.microsoft.com/en-us/windows/apps/desktop/modernize/integrate-packaged-app-with-file-explorer

I now know how to install a shell extension custom menu item in the File Explorer for my win32 packaged desktop app. But I want to give a choice to the user whether he really wants the shell extension. Is there a way to do that in Appx manifest?

Upvotes: 1

Views: 334

Answers (2)

Simon Mourier
Simon Mourier

Reputation: 139085

You can work around that issue if you implement the IExplorerCommandState interface which has the IExplorerCommandState::GetState method

Implement this interface when you need to determine the command state dynamically (for instance, based on an item's properties). This interface provides the same functionality as IExplorerCommand::GetState, without the overhead of that interface's additional methods. Implement IExplorerCommandState when you only need to compute the command state

Upvotes: 1

Bogdan Mitrache
Bogdan Mitrache

Reputation: 11013

Microsoft removed the option to customize the install GUI of an MSIX, this means you cannot create a custom option where your users choose if they want the shell extension or not.

Therefore, the appxmanifest schema does not support the conditional installation of the shell extension, from what I know of.

Microsoft recommends moving all options configurations inside your application, including EULA and license registration procedures. So, theoretically you could try to add the shell registration from your application - I never tried this but maybe the links above from Simon Mourier will help.

Upvotes: 1

Related Questions