Hello friends,
In this articles we will briefly talk about Converting Your VB6(Any Desktop App) to Universal Windows Platform App (UWP), so you can put your VB6 app in Windows app store.

Microsoft has released Desktop App Converter, it's an app on Windows Store which can convert your MSI installer of your program to AppX package (UWP installer), you can then create a test certificate and sign your package then install your software on your computer as a Windows App (this is different from desktop app).

I have already converted my VB6 app to UWP app and it works smoothly with out any problems and with almost the same performance as it's non converted mode, except it takes a little more time for startup. My program is a big project however, you can see it here www.simplegrapher.com

This is the first article about this topic and we will post more articles about this.

There are some different ways which you can convert your app using desktop app converter:
1-Manually creating your AppX package
2-Convert your MSI installer to AppX package using Desktop App Converter
3-Using some Install makers (Advanced Installer, install shield...)

The first way is some what hard (not so hard actually), but you might not be able to register .dll or .ocx files correctly (as i know).
The third way however has many bugs and does not provide every functionalities.
So we will discus the second way, this way is bug-less (if you follow steps correctly) and easier and we can modify the AppX package as well.

Step One - Requirements and Restrictions

In the first step we will talk about the requirement programs to convert your app, you will need all of the following programs for conversion process.

Requirements:
  1. Windows 10 Anniversary Update (Desktop App Converter will only be installed on Windows 10 AU on newer versions (at least 1607)
  2. Desktop App Converter (download it from Windows Store)
  3. Windows 10 base image: Desktop App Converter requires you to obtain a Windows 10 base image (.wim). To obtain the base image matching your host operating system visit here https://aka.ms/converterimages. The build of the .wim file must match the OS build of your windows 10, mine is 14393 [To know the OS build of your windows, open windows setting->System->About]
  4. Windows 10 SDK: you need this to create AppX package, create test certificate and more. Download here.
  5. MSI installer for your program: you will convert this to AppX package, you can create the MSI installer using free version of Advanced Installer. Download here. There are many other alternatives as well. Your MSI installer must install all files correctly, register required file so it can be converted correctly.
    You can also use .exe installers but this isn't recommended and may cause many bugs or the conversion process won't be done.


There are some restrictions on the converted apps, UWP apps can not do or access every things that desktop apps can access, so your desktop app must not do the following behaviors:
  1. Your app modifies the HKEY_LOCAL_MACHINE (HKLM) registry hive: Any attempt by your app to create an HKLM key, or to open one for modification, will result in an access-denied failure. Your app has its own private virtualized view of the registry, so the notion of a user- and machine-wide registry hive (which is what HKLM is) does not apply. You will need to find another way of achieving what you were using HKLM for, like writing to HKEY_CURRENT_USER (HKCU) instead.
  2. Your app writes to the install directory for your app. For example, your app writes to a log file that you put in the same directory as your exe. This isn't supported, so you'll need to find another location, like the local app data store.
  3. Your app installation requires user interaction: Your app installer must be able to run silently, and it must install all of its prerequisites that aren't on by default on a clean OS image. Silent installer are supported in MSI instller very well that is why we recommend MSI installer rather than .exe installer, if your are using .exe installer then your installer must provide silent installation.
  4. To see all other restrictions visit: https://msdn.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-prepare


In the next step we will start the conversion process.

Thanks