Windows codesigning?

Ok so one lesson to be learned from this is that if you generated the MSIX from existing Inno setup installer then make sure to remove the uninstall icon in the start menu !!

(Its in validation again)

1 Like

You by any chance ended with the uninstall icon floating around instead of inside of a product folder (uniting both)?

Um it was in the start menu at least. And I am not sure Inno setup uninstall ever makes sense once the installer is MSIX. Uninstall probably should all be handled through the Windows uninstall in the settings.

It doesn’t.
Store Apps are located in a “secure place”, where you don’t have write-access.
So an own uninstaller couldn’t remove the app. Installing/Updating/Uninstalling is handled by the system when it comes to “store apps”.

1 Like

I was inspecting the things in my launcher, and MOST, almost all, don’t show an uninstall, but one has a folder with the app and the uninstall. I believe that not offering an uninstall in the launcher is really a better design.

See the ScreenShot where you see the “AppX folder” in this example:
Xojo Post Build Script Example: Create .appx Package (e.g. for Windows Store)

The installed app lives in such a (cryptic) folder - and you can’t modify or delete files there.

Our process can’t, the same may not apply to a process inside the isolation, I mean, part of the MSIX package, as the uninstall.

Interesting. Thanks. Have you tried submitting a “plain vanilla” app to the MS Store with no optimizations to the MSIX? What sort of error messages would we expect?

Not sure if errors, clashing something at the destination machine, but our install can become unnecessarily fat carrying unused garbage wrongly detected as “part of the install”. A “plain vanilla” should be done in a good clean OS, with most background noise disabled as I advised. So a VM is a great way of doing it.
Mine for instance was carrying lots of content unique to my machine related to NVIDIA updates, lots of DELL proprietary stuff, even Spotify things, etc lots of background “noises” were recorded and related dependencies and contents injected. By the way, I ended with my final version broken, the system detected I made some change they “disliked” presenting “Error parsing package”. So I’ll redo it in my soon future VM.

I’m looking for alternatives to the certificate prices and have found this at Microsoft:

May be this is a good solution to publish our Xojo apps without any modifications, in the documentation I have read they will certificate it.

I’m still trying to understand all the process, has someone experience with this?

You should reread the thread. We are already testing the process to pack Xojo apps, taking notes of problems found, and improving it. Start here: Windows codesigning? - #9 by Rick_A

I have actually read it, but it refers to MSIX installers and my link is for uploading an exe installer and also using our own selling systems. If I’m not wrong this is a different process.

Last time I’ve read about submitting EXEs, the codesigning should be done by the author. And that was the main force driving efforts to use MSIX and free codesigning. Did that change?

Edit. I’ve read, it’s just “Listing your installer in the store”, you even must host your app in your own servers and CDN. MS only will pass the link to the visitor.

Package as MSIX. List as free version (or light, little money, give MS some coins for exchange, they deserve). Disable features in the free/light versions. Send serials enabling those features after people buy those features and pay you through your systems.

I have putting my Venture on slight hold as I noticed the MSIX when generating it from Inno setup install will not wire up file associations and dont know how to fix that so far.

(Edit, found out how to do file associations though it gets the app icon which is good enough for now, I think, so gonna keep trying., will try to do complete guide if it gets through, had more gotya’s due to the fact it came from Inno setup)

File associations are a customization you need to do in your manifest file: Integrate your desktop app with Windows using packaging extensions - Windows apps | Microsoft Learn

Backup your current MSIX, get a copy, right-click it, and edit it.

Yea I did that in the end, which got me to the “good enough for now stage”,
where the file extensions work but they all get same icon as the application it self:

This is what I added.

<uap:Extension Category="windows.fileTypeAssociation">
          <uap:FileTypeAssociation Name="fileassociations">

I figured to try to push it through before learning how to get that even nicer.

(I had 2nd failed attempt for same reason as before. I found its hard to get rid of the uninstall thing from Innosetup without just recompiling the Inno Setup to not include uninstall at all, which is in my attempt now).

Other got-yas or to be figured out later:

  1. There were things going with the registry that I had to manually edit out, One Drive things and other things. Its not 100% ideal to let it listen to what Inno setup installer did since other things can be going on in the system at same time.

  2. Microsoft Runtimes… my Inno setup files did MS runtime checks and installed if needed. This is something the MSIX obviously did not pick up. But there is no objection from MS on this. (later the solution is probably to just include the MS runtime in the Xojo Apps folder).

I think if I get the app once through then in the long run if not having better tools to handle the MSIX then its probably best to use the MSIX Hero to extract the package into folder, and just then work manually in that folder to maintain it. (Thus never build again from base of Inno setup file once the template is good enough)

My try included LOTS of garbage, not One Drive as yours because I have one drive off.

That’s why I’m building a very “silent” Windows VM just for packaging, with only the basics on, not even a Windows Defender running. All MSIX Hero suggestions to disable, disabled.

MSIX are basically targeted to Win 10+ so I guess you don’t need those, they probably are already there.

1 Like

This sorts out the Icon file on the .ecr files.

(adding the uap:Logo tag)

<uap:Extension Category="windows.fileTypeAssociation">
          <uap:FileTypeAssociation Name="fileassociations">

Small baby steps and it gets nicer !



So its proven to work !! And without owning certificate of any kind for Windows.