We use IS DevStudio 9.01 to create installations but need to use Visual Studio.Net 2003 to create merge modules.
Using Visual Studio.Net to create a merge module (id= "MyModule.GUID1"), I want to set the default target folder for the module relative to the INSTALLDIR property of the installation. I create a custom folder and give it a default value of [ProgramFilesFolder]MyProduct and set property MY_INSTALLDIR. In the MSI database, I have a custom action (set property type) to set MY_INSTALLDIR=[INSTALLDIR]. The problem is that after the module is merged, the target for each the module componets is being set to MY_INSTALLDIR.GUID1 instead of MY_INSTALLDR and the module files get installed to %ProgramFiles%\MyProduct even when the user changes the INSTALLDIR property at run-time.
Is there a way to do this? I'd rather not have to manually edit the MSI database post-merge as we will have hundreds of modules pulled into the MSI by ModuleDependency references to each other.
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.
Pls Help - Merge Module Hell
Started by
colby
, Mar 09 2004 01:27
3 replies to this topic
Posted 09 March 2004 - 02:38
The entry that your merge modules uses - MY_INSTALLDIR
You should add MY_INSTALLDIR.guid into your main project in the directory tree.
So MY_INSTALLDIR.guid will have a parent directory of something like INSTALLDIR.
You then set INSTALLDIR with your custom action.
InstallShield adds a guid to the merge module directories so that these dont clash if multiple merge modules contain the same directory table entry.
You should add MY_INSTALLDIR.guid into your main project in the directory tree.
So MY_INSTALLDIR.guid will have a parent directory of something like INSTALLDIR.
You then set INSTALLDIR with your custom action.
InstallShield adds a guid to the merge module directories so that these dont clash if multiple merge modules contain the same directory table entry.
Posted 09 March 2004 - 04:00
I need the modules to handle everything without the need to edit the MSI post-merge or a way of automating the target change for hundreds of modules pulled in from ModuleDependency table entries. If I have to edit the MSI post-merge, what is the point of having Module Dependencies?