Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Upgrade component without a key file


4 replies to this topic

lonny

lonny
  • Members
  • 14 posts

Posted 16 December 2002 - 13:32

Hi,

 I run into the following problem while trying to create an minor upgrade for an installation (ISDev 8.0):

When I change a file in a component, that doesn't have a key file, I get the error that the key for that component doesn't change, an so in an minor upgrade szenario that file won't be installed.
But the component doesn't have a key file, so I can't be changed... And due to the IS Knowledge Base, a components key file must not be changed in an upgrade.

Anybody got a solution for this (besides a major upgrade)?

Regards,
Lonny

lonny

lonny
  • Members
  • 14 posts

Posted 16 December 2002 - 15:57

After a lot of searching and reading I found the following in the Windows Install SDK Help:

Replacing Existing Files: Only if a components key file changes, MSI determines for each installed file if it should be replaced.

Based on this, is the following conclusion correct?
If I have to install e.g. 100 MPEG files, I need to add an artificial key file to that component and increase that key files version number every time I add/modify one of the mpeg-files, so that I can build an upgrade installation?

luke_s

luke_s
  • Full Members
  • 532 posts

Posted 19 December 2002 - 07:25

Yeah, creating a exe with a version and setting this as your key file would solve your problem.
I dont do minor upgrades with my install, I always do major ones and I dont have key files set and I never run into problems like this.

luke_s

luke_s
  • Full Members
  • 532 posts

Posted 19 December 2002 - 07:26

Yeah, creating a exe with a version and setting this as your key file would solve your problem.

I dont do minor upgrades with my install, I always do major ones and I dont have key files set and I never run into problems like this.

lonny

lonny
  • Members
  • 14 posts

Posted 19 December 2002 - 13:50

Hi luke_s,

creating an exe file is a problem, cause it don't got one per component (that's like using aritficial version file I mentioned in my first post). I read about companion key files, but there is the problem if I change only a few files, MSI checks all files for changes (and I got installations with a few thousand files).

So I'm using a major upgrade (major upgrade item in Dev 8.0). The only problem here is, that all registry values got overwritten. I solved this be making a backup in OnBegin() and restoring it in OnEnd().

I think it's a design error in MSI, that you can't make an upgrade without a component key file. If no key file is defined, simple check all files in a component if the are present, have changed... Exact the same is done when a key file changes.

Regards,
Lonny