I have an MSI admin install and I need to replace an file in it with a newer version. I don't have a compressed copy of the MSI. How do I go about replacing the file, including any requirements to update version details or package code in the MSI, baring mind that I need this package to repair correctly for existing installations too.
Answer Summary:
0 Comments   [ - ] Hide Comments


Please log in to comment

Community Chosen Answer


I don't think you need the WSI step if it's an AIP you're working off. Just replace the file in the folder structure and change the pertinent entries in the File table.

You might even get away with a Small Upgrade in this case (only change Package Code). Just run through the checklist here: http://kb.flexerasoftware.com/doc/Helpnet/installshield12helplib/MajorMinorSmall.htm
Answered 03/30/2012 by: pjgeutjens
Red Belt

  • Yep...i missed this point on Small Upgrade. Ty for checking on me :)
Please log in to comment
Answer this question or Comment on this question for clarity


Create a transform file . Delete the file to be replaced . and the add the file new file and save the file . Apply the transform to the base MSI .

Thanks .
Answered 03/30/2012 by: praveen.yeruva
White Belt

Please log in to comment
The first rule of a packager are:

1. Never touch a ventor MSI !!!

Create a MST, that is verry simple and the best way to create no errors or problems
Answered 04/05/2012 by: bernhard riehemann
White Belt

Please log in to comment
1. Convert the MSI into WSI
2. Delete the file that needs to be replaced.
3. Keep the newer version file at that location and than import it to your WSI.
4. Spin the package code and product code, taking into care not changing the upgrade
5. Accordingly make changes to Upgrade table.
And you are good to go. :)
Answered 03/30/2012 by: akki
Fourth Degree Black Belt

  • Can I confirm why it's necessary to convert it to a WSI? Is this just best practice?
  • Yes it is considered as best practice but i agree with @pjgeutjens on just changing PackageCode.
  • How about creating a transform .
  • First rule of MSI packaging is to never repackage a vendor's MSI. You void all support and will have problems with future upgrades.

    If this is an "in house" MSI, then modify it however you feel is right, but you could proboably ask the developer to make the change for you and give you an updated MSI. If this is a vendor's MSI, an MST is the best and safest course of action.
    • @Praveen: Yes bro thats how it should be done.
    • @Praveen: Yes bro thats how it should be done.
      • @akki .. I want to tell you it should be done by creating a transform rather than converting MSI to WSI and then editing it .. anyways you corrected it .

  • @jmaclaurin: You are absolutely correct brother, I dont know how could it possibly escape from my mind. Ty for correcting me. :)
Please log in to comment
The easiest way is just to replace the file in the folder structure.
Open the msi in for Wise. Change the version number for example to 1.0.0 to 1.0.1
Check the the Wiseversioninfo table. Delete the file you have replaced. Recompile
Answered 04/03/2012 by: Bankeralle
Second Degree Blue Belt

Please log in to comment
Creating a transform is the best way to go about this.
Answered 04/03/2012 by: piyushnasa
Red Belt

Please log in to comment