Project Installer
Hi, i've created a .Net 8.0 Wpf application and i'd like to know which project installer i should choose between wix Toolsets and Microsoft Visual Studio Installer Projects 2022 ? It seems likes Visual Studio Installer Projects 2022 are more .net Framework app oriented.
22 Replies
WiX is a huge pain in the ass, frankly
the documentation is basically just a schema reference and you have to figure pretty much everything out yourself
So, Microsoft Visual Studio Installer Projects 2022 is good enough for basic installation right ? Because I'd like to execute some code during the installation to migrate some old data to the app I'm installing.
probably, i've never used it
i'm currently looking at velopack for my deployments
I'll take a look if it meets my expectations. Just to specify my application is intended to be deployed from on offline PCs
First and foremost, do you need an installer?
yup because i'll have to install the app and be able to update it on every new machine that we will do
Oh hello! I've been looking for a nice installer framework for years
Then yeah, Velopack should be nice
it's very opinionated but in my case that's fine
I asked because many people just assume they need an installer, while just a self-contained .exe would do
Ah, you can't customise the installer itself at all. That's a shame.
i though it would be enough but to manage the update it will be much easier with an installer that why i'm looking for it ahah
I did manage to get Inno Setup to call into a C# DLL at one point, but it was a faff
Could maybe use a private winget repository or something
But yeah, an installer + updater combo will be easier
i think you can get wix to call custom code, but like i said wix is a pain in the ass
i have started with Microsoft Visual Studio Installer Projects 2022 but i feel like i won't be able to do everything i want with it
They're all a pain in the arse, quite frankly
it's supposed to be easier than just writing a MSI yourself which makes me terrified of what writing a MSI is like
Except maybe Advanced Installer, which I haven't played with, and isn't free
Thanks for your anwsers
I tend to go with Inno Setup because it isn't pure pain, and you can at least normally do the things you want to do in it, but be prepared to learn Pascal
WIX is a PITA but it's pretty much the best option. If you go down that route I suggest you use the project WixSharp (https://github.com/oleg-shilo/wixsharp). This in a neat project that allows you to write the msi configuration in C#. It then compiles into an application, that post build runs itself to generate the .msi. For example writing custom actions in vanilla is a horrible experience but with this project you just write the static methods and it abstracts them into the action assemblies.
I ship projects that go to thousands of users this way, so I know it's stable.
This is still a bunch of random issues but it's workflows are so much better then hand editing xml files