Application + update + self repair = broken

John McFadyen's picture

I have an app which is packaged with IS using the rather daft component model used with IS.

1 folder lots of files put into single component.

Note: this application has HKCU and has been catered for with usual self healing methodologies.

The application has a patch released in the form of an EXE. When i deploy the EXE its "happy days" all works ok.

When i login as another user self heal kicks off on the initial application causing it to revert to pre-patch state.

Would you agree that repackaging the EXE is a waste of time as the original application will still self heal, the later will have no entry points so it will never heal. We run no conflict management at all (yaay) so even if I could match components it would be of little use due to the IS component model used.

I think the way forward is to completely remove the original and create a new app with both the original and patch combined. How did Installshield become so prominent when its so fail.

John McFadyen's picture

additional info

I should probably add most of the files are unversioned, considering this application releases quarterly updates I find that to be a rather useful feature of this package.

philbenson's picture

Makes sense

to repackage the original app + patch. You will have less problems, plus the fact that at least once a quarter you will have at least some income ;-)

Cheers
Phil

EdT's picture

ActiveSetup?

John,
What about adding in an active setup process to handle the application of the patch in the event of self healing?
Might be a stopgap solution while you follow the more reliable route of creating an upgrade.

If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.

John McFadyen's picture

upgrade

Phil,

yeah I went down the road of packaging them both together, setup an upgrade to remove the older. not ideal but better than the other options I suppose.

Ed,

I did think the same at first but the issue is knowing when the older app has self healed, taking into consideration its already deployed I cant put smarts into it to handle this from the previous app.

EdT's picture

Read the event log programmatically?

John,
Depending on how far you want to go down the solution route, you could look for repair events in the event log using WMI. Since you should know the component(s) being healed, this will allow more targetted searching.
Check out this article:
http://www.computerperformance.co.uk/ezine/ezine39.htm

If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.

John McFadyen's picture

healing

the components being healed are the HKCU that was setup to heal by design for new users.

Essentially this means that each user logs in, runs app, heals, breaks app. Would then need repair as I don't have the essential ingredients (i.e. cmdb) facilities on this site a capture of the patch is not a viable option.

I have already captured the two together and setup an upgrade to haul the other mess off the machine, the beauty of this is the previous package has marked the HKCR component to be removed. Its a lose / lose situation. The more I look at the complete mess installshield makes of repackaging the more I hate it.

I am going to do a product comparison of wise vs installshield and tear them both apart. Without any psychic abilities I can predict who is going to win this battle hands down.

I will post it on my blog I am pretty annoyed with IS atm.

VBScab's picture

>Without any psychic

>Without any psychic abilities I can predict who is going to win this battle hands down.
Indeed. The winner will be a product which will be dead (sorry, more dead than it is already) inside, what, two years?

Don't know why 'x' happened? Want to know why 'y' happened? Use ProcMon and it will tell you.
Think about using http://www.google.com before posting.