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

Updates:- Quick Patch Project


9 replies to this topic

pajaykumar

pajaykumar
  • Full Members
  • 33 posts

Posted 24 March 2007 - 07:39

Hello Everybody,

I am using InstallShield 11 Professional, and deals with basic msi projects. I am facing a problem with providing updates, where I have to send the updates by a patch. Here I want to replace a complete folder by another folder. I doubt whether it is possible with quick patch project or not? Can anyone suggest me, a way of doing this?

Thanks.

Ajaykumar

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 24 March 2007 - 17:50

Each folder is represented by at least one component. You cannot remove a component in a quick patch. And you cannot change the location of an installed component using a patch. Instead you may need to build a Major Upgrade.

pajaykumar

pajaykumar
  • Full Members
  • 33 posts

Posted 26 March 2007 - 06:30

Thanks Stefan

pajaykumar

pajaykumar
  • Full Members
  • 33 posts

Posted 05 April 2007 - 06:38

Hi Stefan,

I think this is possible by major upgrade. But what I know is, this type of upgrade is a complete uninstallation and then reinstallation of all of the resources associated with our program. Therefore, any data for our program that has been configured by the user may get completely deleted from the user's machine. And if I need to retain some of the user data, then I will need to create a custom action that backs up this data, and then replaces it after the installation of new data has completed.

But I don’t know how to do this exactly…Can you please suggest me how to do this?


Thanks,

Ajay


pajaykumar

pajaykumar
  • Full Members
  • 33 posts

Posted 11 April 2007 - 07:19

I am waiting for your reply.....Please respond...


Thanks,

Ajay

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 13 April 2007 - 14:20

I was out of office - thanks for your patience wink.gif

You could write a DLL that would backup thoses data. Or you could tell Windows Installer not to remove the feature with the customer data during the major upgrade. To do this, list all other features in the "Only Remove Specified Features" of the advanced settings of your major upgrade item.

pajaykumar

pajaykumar
  • Full Members
  • 33 posts

Posted 17 April 2007 - 13:44

Thanks Stefan,

Whatever you have suggested is now working well. But now I stuck in some new problems. As per your suggestion I have made upgradeable build (major upgrade) by specifying only remove specified features property. But I am facing two new problems,

1. I have one custom script (cleanup) { with REMOVE=”ALL” condition} running for uninstalling all the logs created by program, while uninstalling product. I have sequenced this just above remove-folders action in execute installation sequences. During major upgrade, I think because of this script it is removing all user created files, which are very important. And again installing all new ones.

2. Other issue I am facing is of rollback, after installing the major upgrade when I launch my application, windows configures the program and rollbacks some of the replaced files. I know about disable rollback property but unable to find where to set it in IS.

Thanks,

Ajay

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 18 April 2007 - 15:32

You would have to change your condition, e.g.:
REMOVE~="ALL" And Not UpgradingProductCode

For the second problem you should check the Windows Event log and/or generate a verbose install log to identify the problem. There's also an article in the MSI FAQ (www.msifaq.com) that helps to identify the cause of unexpected auto repairs.

pajaykumar

pajaykumar
  • Full Members
  • 33 posts

Posted 25 April 2007 - 12:59

Hi Stefan,

Thanks for your reply,

But still I have some questions to ask,

1. Now I am using REMOVE="ALL" AND NOT UPGRADINGPRODUCTCODE condition for my custom script, and it works well for new build. But earlier posted build still has REMOVE=”ALL” condition and when I go for major upgrade for that build it still removes all the files during installation (complete uninstall and then install.) What can I do for this…? After some search, I got one way of doing this, create two different scripts, one for backup and one for restore and then place it accordingly in the custom action sequence. But I don’t know what should be the code for this…how I can know where the user has installed the build, what’s the location….Can you please suggest me, how to write this?

2. During major upgrade build it still asks me for installation location, and if I disable it, how can I know, where user have installed earlier build. (For minor upgrade no such question arise, which I was doing till now.) I think me going wrong somewhere.

Thanks,

Ajay

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 30 April 2007 - 16:27

You could use a system search to find the location, e.g. from a registry entry (if you did set the ARPINSTALLLOCATION peroperty).