Submitting EXE to Microsoft Store: Uninstall Policy 10.2.7

TamSoft 0 Reputation points
2023-02-08T18:16:30.34+00:00

I've submitted an app-EXE to Microsoft Store. It was rejected.

App review report says EXE does not comply with Security policy 10.2.7:

Products need to clearly communicate how they can be removed. There is either no entry for your product in the Add or Remove Programs list or no clear alternative method of removal. Please update your product so users clearly understand how to uninstall.

I don't understand this requirement.

When app is installed, a shortcut is placed on Desktop, through which app could easily be uninstalled by a button-click.

I've stated that clearly in app's store-listing, so that users could easily understand how they uninstall, if required.

What else should be done?

  • Furthermore, my EXE does support a command-line argument /u for quick and thorough uninstallation, but nowhere in Partner Center / App Submission / Package Details could this bit of information be specified. [Unlike Installation parameters which can be specified]
  • Additionally, it is possible to programmatically register the app into Windows Add/Remove Programs list (when it is installed), but for that - it needs permission to write to Windows Registry HKLM key. Is is assured than when user installs my app from store, this EXE would be auto-run with Admin privileges (so it can write to this Registry-key)?
  • Are there any other ways of EXE implementation, allowing to upload it to the Store, complying to all Store policies (and specifically - to the Uninstall requirement)?

I'm using C# over Visual Studio 2017.

Thanks much in advance.

Visual Studio
Visual Studio
A family of Microsoft suites of integrated development tools for building applications for Windows, the web and mobile devices.
4,730 questions
Microsoft Partner Center
Microsoft Partner Center
A Microsoft website for partners that provides access to product support, a partner community, and other partner services.
895 questions
C#
C#
An object-oriented and type-safe programming language that has its roots in the C family of languages and includes support for component-oriented programming.
10,423 questions
Visual Studio Setup
Visual Studio Setup
Visual Studio: A family of Microsoft suites of integrated development tools for building applications for Windows, the web and mobile devices.Setup: The procedures involved in preparing a software program or application to operate within a computer or mobile device.
982 questions
{count} votes

1 answer

Sort by: Most helpful
  1. José Antonio Campero Morales 105 Reputation points
    2023-02-28T01:41:38.9666667+00:00

    To comply with the Uninstall Policy 10.2.7 of the Microsoft Store, you need to ensure that your application can be easily removed by the user through a clear method of uninstallation. While you have mentioned that a shortcut is placed on the Desktop for users to easily uninstall the app, it seems like that alone is not sufficient to meet the store's requirements.

    One option you can consider is to create an entry for your application in the Windows Add/Remove Programs list. You can do this by using the Windows Installer technology to install your application, which will automatically create an entry in the Add/Remove Programs list. Another option is to programmatically register your application in the Add/Remove Programs list during installation, as you mentioned. However, it's important to note that modifying the Windows Registry requires administrator privileges, and it's not guaranteed that your application will be run with admin privileges during installation from the Microsoft Store.

    To communicate the command-line argument for uninstallation, you can add a "Uninstall Instructions" section to your app's store listing. This can include the command-line argument as well as any other necessary instructions for uninstallation.

    Overall, it's important to ensure that your app complies with all of the Microsoft Store's policies before submitting it for review. This can help to ensure a smoother review process and increase the likelihood of your app being accepted for distribution on the Store.