0
votes

A new version of our product (a software package) has been released recently. To expand functionality, we developed a plugin afterwards. Now we would like to deploy these files (two new files and an updated version of an existing file) as hotfix (or update) with MSI patch (msp). I downloaded a blank PCP file from MSDN website and made some changes in it. The changes involve the following tables:

ImageFamilies

PatchMetadata

PatchSequence

Properties

TargetImages

UpgradedImages

All the other tables remain blank.

Then, I managed to create an msp file with this PCP file based on two versions of the admin image of the software package, both of which were built from Visual Studio setup project (VS 2010). The difference between these two msi packages are that I replaced a file and added two new files in, but nothing else. I didn't change the product code (GUID), the upgrade code (GUID), nor the version number.

Then I was trying to install this msp file on top of the released version.

  1. The first screen appearing is asking to Repair or Remove the product. This is not what we want. We want the installer is like a fresh installation, including showing the licence agreement. How do I define the UI for MSI patch?

  2. During the installation of the patch, I got an error message as below, then the installation failed:

    Error 1001. Exception occurred while initializing the installation: System.IO.FileNotFoundException: Could not load file or assembly 'file:///C:\WINDOWS\system32\Files\BPS\TestApp' or one of its dependencies. This system cannot find the file specified.

    BPS is the folder where we install our product in [ProgramFilesFolder]. I wondered why MSI was trying to search in "C:\Windows\system32" for files installed in [ProgramFilesFolder]. In addition, the changed files in the hotfix are located in somewhere else ([CommonAppDataFolder]) instead of in this "BPS" folder.

Can anyone help me with these problems? If any more information is needed to identify the issues, please let me know. Any thoughts, advices, suggestions would be very much appreciated.

Dan

1

1 Answers

0
votes

The first screen appearing is asking to Repair or Remove the product. This is not what we want.

In the upgrade package increase the Product Version. This way you will use a minor upgrade instead of a small update.

You can also try using the MSIEXEC command line to apply the patch:

http://msdn.microsoft.com/en-us/library/aa367574(VS.85).aspx

http://msdn.microsoft.com/en-us/library/aa367575(VS.85).aspx

During the installation of the patch, I got an error message as below, then the installation failed

Is there something in your installer using that file? Perhaps a custom action? Try looking in the log to see what action tries to access that file.