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

Overwrite "some" files


8 replies to this topic

Christoph

Christoph
  • Full Members
  • 81 posts

Posted 01 February 2005 - 15:12

All.

I've a basic MSI project created within installshield X with, let's say, 5 components(to mention some fiction example). All these components contain 1 keyfile.

Is it possible to say always overwrite the keyfiles contained within component1, 2 and 3 but let the file versioning rules do their job for component 4 and 5?

Is it maybe possible to retrieve this behaviour by right clicking on one of those keyfiles, choose properties and check the option "Override System Version"??

Which value do I need to fill in there and is during an upgrade the file within the newer package always installed???

Thanks for any information.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 02 February 2005 - 09:32

Yes, you can do that as a trick. Enter a version number that's higher than the actual file version. The clean solution of course would be to increment the actual file version.

Christoph

Christoph
  • Full Members
  • 81 posts

Posted 02 February 2005 - 09:42

Stefan,

thanks for the info. I tried it already like this, and it worked fine.
You have a point that you say that normally the fileversions should be updated, I told this also to my productmanager but his statement was that when a developer forget to update the versionnumber, the upgrade fails. sad.gif

So, I took the responsibility to cover this within the installer. Are their any known side-effects on this solution?!

Another thing... I was testing the minor upgrade.
So I installed a package with productversion 1.25.51 and do a minor upgrade with a package with version 1.25.53. The upgrade goes fine but when I completely uninstall 1.25.53, some files/folders are left on the system?! More specific, files and folders that where linked in dynamically within the installer.

Any idea what this could be? I didn't set the permanent and shared flag.
When I do a straight installation of 1.25.53 and uninstall afterwards, this goes fine but not the uninstall after the minor upgrade blink.gif

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 02 February 2005 - 10:10

I guess the component GUID changed. This happens if you include sub-folders as dynamic links, or if you didn't specify the old .msi file in the patch optimization field of the release wizard. This may also cause your update to fail and must be avoided.
Perfoming an update validation should poit out the problem, too.

Christoph

Christoph
  • Full Members
  • 81 posts

Posted 02 February 2005 - 16:05

Stefan,

probably the Component GUID has changed.

When I create a verbose log when running the minor upgrade, I've got SELMGR errorlogs stating that 'Component ID {XXXXX} is registered to feature X, but is not present in the component table. Removal of components of a feature is not supported!'.

Is the dynamic linking of files and subfolders the reason why the component GUID is changed automatically after every rebuild??

I think I cannot make use of the patch optimization field because I want my new package can be used to upgrade the previous package, previous package - 1, previous package - 2, etc...

The files that I linked dynamically are spread around within several subfolders,... bringing the total amount of files linked dynamically within one component to more than 2000!

Is there another way how I can solve this or do I always need to force a major upgrade?

Thanks for the input so far!

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 02 February 2005 - 16:29

Dynamic linking of folders one by one could work. Only if you include sub-folders the GUIDs will typically change. Create separate components for your sub folders.
You should have used patch optimizations for all your previous builds. Mabe build a Major Upgrade now, and then use Patch optimization going forward.

Christoph

Christoph
  • Full Members
  • 81 posts

Posted 02 February 2005 - 17:01

I will try to include folders dynamically one by one and link them whithin separate components.

About that patch optimization... is it also required(usefull) to do this even if I never will release a patch for my application.

I want to release everytime a complete installer with all files included so that it can be used as an upgrade AND/OR as a first install package.

When I use the Previous package option within the release view and I refer to a msi file... I will probably being able to upgrade this msi file correctly but not another one... or am I wrong??



Christoph

Christoph
  • Full Members
  • 81 posts

Posted 03 February 2005 - 17:18

Stefan,

one more question and I will know enough to get it working I suppose:

Is it still necessary to re-organize my components with dynamic links(like you stated within your answer before) when I only plan to use major upgrades?

Thanks for your help.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 04 February 2005 - 15:21

No, this is only required to enable small and minor updates.