MsiAssembly table is populated on compile even though there are no .NET assemblies in the project

Article:TECH30904  |  Created: 2007-06-11  |  Updated: 2009-09-18  |  Article URL http://www.symantec.com/docs/TECH30904
Article Type
Technical Solution


Issue



I have a 64-bit merge module. Whenever I compile this merge module the MsiAssembly table is populated. However, none of the files in the merge module are .NET assemblies. The only way to prevent this from occurring is to unmark the 'Rescan Com Interop registry keys on compile' option.

If the files referenced in the MsiAssembly table are added to a new merge module, this behavior does not occur.


Environment



Wise Installation Studio/Express 7.0

Cause



The value in the attributes column of the WiseSourcePath table indicate that the file is a .NET assembly. Because of this, even if you go to the Files page and change the assembly type to None in the File details, the type is changed back to .NET and the MsiAssembly table is populated.

Solution



1. Go to the Setup Editor > Tables > WiseSourcePath table
2. The Attributes column for the files added to the MsiAssembly table is probably 8. Change the attributes column for these entries to 16
3. Go to the Files page
4. Double-click on each of the files that are being added to the MsiAssembly table. Go to the Assembly tab and change the Assembly Type to None.
5. Compile the installation. This time when you compile, the Assembly Type should remain None even if the Rescan Com interop registry keys on compile option is selected

Legacy ID



35404


Article URL http://www.symantec.com/docs/TECH30904


Terms of use for this information are found in Legal Notices