cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
munsingh
Level 6

Feature Install Order

Hello All,

I have a few merge modules, which I need to install in a particular order.

The consumer msi then has a requirement wherein it needs to overwrite certain files already installed by one of the merge module.

What I am seeing is that the merge modules are not getting installed in the way I have assigned them in the Features. Do to this our msi is installing its files first and then the MM is overwriting it.

Any pointers? I am really stuck here.

Regards,
Manish
Labels (1)
0 Kudos
(5) Replies
mumbles
Level 7

You may be able to muck around with the sequence in which Merge Modules are run.

Go to Custom Actions and Sequences, under the installation folder, expand the 'Execute' sequence not the UI one.

Find the mergemodule sequence and alter the number before the installfiles sequence number.

Disclaimer:

1. I don't know if this will screw anything up. You'll need to test.
2. I didn't quickly see the mergemodule action in the sequence. You may need to find the real name for it.
0 Kudos
KathyMorey
Level 10

If I understand it correctly, once a project is compiled, the msi doesn't know anything about merge modules - the components in the merge module are simply components in the MSI. You may be able to set the sequence of file installtion by modifying the file table in the built MSI (through Orca, eg).

I think you might be better off, however, in figuring out a better way to do what you're trying to do. Basically, you are trying to install two versions of the same file in the one MSI; why can't you put the correct version of the file in the merge module in the first place?
0 Kudos
munsingh
Level 6

Well I can't do that because the merge modules come from a framework. Applications who use the framework can override certain files made available by the framework.

Hence the requirement, anyways what I have is to install the files (the overridden ones) with "PP_" prefixed to the name. After InstallFiles, I run a custom action which recursively looks for files with PP_ prefix and then renames them to the actual file, renaming the actual file to have a prefix FW_.

During uninstall I do the other way. For example

MM installs file: test.html
App installs file as: PP_test.html
CA during install: Renames test.html to FW_test.html and PP_test.html to test.html
CA during uninstall: Renames test.html to PP_test.html and FW_test.html to test.html
0 Kudos
KathyMorey
Level 10

I understand your requirements now. But I'm a little confused. If you are installing the updated files with a different name, and scheduling a custom action after install files to change the names, why is the order of installing the files an issue?
0 Kudos
munsingh
Level 6

Sorry I was not clear. The steps I have mentioned is the workaround I took for solving my problem.

Posting here so that others can also see.
0 Kudos