Installshield
-
HERE[^] Seriously: Evaluate all alternatives to get away from it. MSI sucks, InstallShield sucks, and InstallShield for MSI doesn't follow common rules for multiplying negatives.
We are a big screwed up dysfunctional psychotic happy family - some more screwed up, others more happy, but everybody's psychotic joint venture definition of CP
My first real C# project | Linkify!|FoldWithUs! | sighistMSI possibly doesn't suck if you understand its rules. However, its rules are pretty arcane - and InstallShield-generated packages break many of them. InstallShield aren't alone in this - Visual Studio-generated packages are pretty rubbish too, and Microsoft's Visual Studio merge modules commonly suck. MSI was invented by Office and it's fairly clear that DevDiv generally don't "get it". To be fair, the documentation is very hard to get into - I found "The Definitive Guide to Windows Installer[^]" very helpful, although it starts from the perspective of someone familiar with building MSIs with Visual Studio. WiX is written by people who actually do get it; unfortunately we get a lot of people on the mailing list who ask to subvert WiX and MSI and aren't too happy when the answer is 'don't do that'.
Stability. What an interesting concept. -- Chris Maunder
-
You might enjoy varying the search term, such asleaving out the first syllable, or removing all occurences of 'eld' wiht 't'. :rolleyes: To be fair, it's doable, but that MSI stuff is scary. I guess it's ok if you have a vanilla installation - but just some problems I saw on the forums are crazy - e.g trying to control if a file gets overwritten or not.
brianwelsch wrote:
write up processes for maintaining our builds
Just make sure your name doesn't appear on that :cool:
We are a big screwed up dysfunctional psychotic happy family - some more screwed up, others more happy, but everybody's psychotic joint venture definition of CP
My first real C# project | Linkify!|FoldWithUs! | sighistpeterchen wrote:
trying to control if a file gets overwritten or not.
If both files have a version number in their version resources, latest version wins. If one file has a version number and the other doesn't, the file with the version number wins. If neither file has a version number, the one with the latest creation date wins, unless the file already on the disk has been modified (modified date newer than creation date) in which case the existing file is kept. File hashes can be used to check whether the existing file is different from the new file before obtaining the new file, in the 'neither file has a version' case (this is useful in internet download/administrative share scenarios where the remote file may take some time to obtain before being checked). The creation date on the installed file is set to the date on the source file, which is in the CAB metadata if the files are in an embedded or loose CAB. If the files are loose (not in a CAB), there's a chance that the creation date may be set incorrectly and confuse things. InstallShield's feature to force overwriting lies to MSI and enters a very large version number in the FileVersion column of the File table, which is liable to cause a repair every time an advertised shortcut is used. Not recommended. This only works because Windows Installer checks the version listed in the FileVersion column, not checking the actual file (this is again presumably to prevent having to obtain/unpack the file until necessary). If you're trying to have an older package overwrite a newer one in-place, you can't. You must uninstall the newer package then install the old one. You can still do this with the
RemoveExistingProducts
action but it will need to be scheduled before the install script for the new product (i.e. beforeInstallInitialize
).Stability. What an interesting concept. -- Chris Maunder
-
Interesting. We wrote a new installer for our product a few months back using InstallAware and everything worked first time. :) Integrating it into the build was pretty easy once we figured out how to conditionally compile for different configurations (we build Debug, Release and Retail builds). I'm really, really glad we never went the Installshield route!
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
Have you tested your InstallAware setups under Vista yet?
Author of The Career Programmer and Unite the Tribes www.PracticalStrategyConsulting.com
-
Have you tested your InstallAware setups under Vista yet?
Author of The Career Programmer and Unite the Tribes www.PracticalStrategyConsulting.com
It was tested under Vista before it was tested under XP. ;)
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
It was tested under Vista before it was tested under XP. ;)
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
Just took a look at their site, looks like a nice product. They have a 30 trial download so I think I'll give it a whirl and then pitch it to my client if it's smooth sailing. Thanks, Anna!
Author of The Career Programmer and Unite the Tribes www.PracticalStrategyConsulting.com
-
Just took a look at their site, looks like a nice product. They have a 30 trial download so I think I'll give it a whirl and then pitch it to my client if it's smooth sailing. Thanks, Anna!
Author of The Career Programmer and Unite the Tribes www.PracticalStrategyConsulting.com
Anytime Christopher! We came across them at the ESWC last year, and from what we can gather they are a 10 year old company of ex-Installshield people who wanted to make a product that actually works. They seemed like an easy going bunch with a very good product, so we thought we'd give them a try after they offered a free copy of the Express Edition to any delegate who gave them a business card. :) We actually went for the Studio edition (second from the top of the range) in the end as it allowed us to design custom dialogs within the installer and a few other bits, but for most purposes the Express Edition should suffice.
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
MSI possibly doesn't suck if you understand its rules. However, its rules are pretty arcane - and InstallShield-generated packages break many of them. InstallShield aren't alone in this - Visual Studio-generated packages are pretty rubbish too, and Microsoft's Visual Studio merge modules commonly suck. MSI was invented by Office and it's fairly clear that DevDiv generally don't "get it". To be fair, the documentation is very hard to get into - I found "The Definitive Guide to Windows Installer[^]" very helpful, although it starts from the perspective of someone familiar with building MSIs with Visual Studio. WiX is written by people who actually do get it; unfortunately we get a lot of people on the mailing list who ask to subvert WiX and MSI and aren't too happy when the answer is 'don't do that'.
Stability. What an interesting concept. -- Chris Maunder
Wix is kind of cool - I was going to suggest this to the OP. I use it at work for a few things and it was pretty simple to grok for my, admittedly pretty basic, needs.
¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! VCF Blog
-
Interesting. We wrote a new installer for our product a few months back using InstallAware and everything worked first time. :) Integrating it into the build was pretty easy once we figured out how to conditionally compile for different configurations (we build Debug, Release and Retail builds). I'm really, really glad we never went the Installshield route!
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
Does InstallAware support multi-lingual installations out of the box yet? When I last evaluated it, some time ago, it supported multi-lingual installations but you had to do the entire translation yourself using some convoluted editor. In the end we chose InstallShield purely because it provided multi-lingual dialogs ready translated. So you only had to translate strings specific to your project which made much more sense. Sadly the decision was flawed and defintely did not save time. In practice Installshield makes such a hash of managing your multi-lingual strings and components that I waste vast amounts of time directly editing the underlying MSI tables to correct what Installshield did! In fact I spend so much time in the DirectEditor window of Installshield it makes me wonder why we bothered buying Installshield in the first place!!! If I had to choose over again, I doubt Installshield would be in the frame.
-- The Obliterator
-
Anytime Christopher! We came across them at the ESWC last year, and from what we can gather they are a 10 year old company of ex-Installshield people who wanted to make a product that actually works. They seemed like an easy going bunch with a very good product, so we thought we'd give them a try after they offered a free copy of the Express Edition to any delegate who gave them a business card. :) We actually went for the Studio edition (second from the top of the range) in the end as it allowed us to design custom dialogs within the installer and a few other bits, but for most purposes the Express Edition should suffice.
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
Just as a side note - I just downloaded this, and I noticed that they wrote it using Delphi! Woot!
¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! VCF Blog
-
Does InstallAware support multi-lingual installations out of the box yet? When I last evaluated it, some time ago, it supported multi-lingual installations but you had to do the entire translation yourself using some convoluted editor. In the end we chose InstallShield purely because it provided multi-lingual dialogs ready translated. So you only had to translate strings specific to your project which made much more sense. Sadly the decision was flawed and defintely did not save time. In practice Installshield makes such a hash of managing your multi-lingual strings and components that I waste vast amounts of time directly editing the underlying MSI tables to correct what Installshield did! In fact I spend so much time in the DirectEditor window of Installshield it makes me wonder why we bothered buying Installshield in the first place!!! If I had to choose over again, I doubt Installshield would be in the frame.
-- The Obliterator
Off the top of my head I couldn't say - we don't have any multi-lingual installations yet.
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
Just as a side note - I just downloaded this, and I noticed that they wrote it using Delphi! Woot!
¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! VCF Blog
I believe it's a mixture of Delphi and C++. Mind you that shouldn't be a surprise really - if you go into the ISV market they are the predominant languages, after all. :)
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"