http://bugs.winehq.org/show_bug.cgi?id=7357
Summary: Vector NTI installer requires JScript to install all features Product: Wine Version: CVS Platform: Other URL: http://download.invitrogen.com/evergreen/Vector%20NTI%20 Advance%2010.exe OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-msi AssignedTo: wine-bugs@winehq.org ReportedBy: mk144210@bcm.tmc.edu
This is continued from http://bugs.winehq.org/show_bug.cgi?id=6992 as this is a new bug.
I will copy and paste my analysis from there, and add the appropriate attachments as well:
Upon further examination I am pretty (90-95%) sure that the lack of JScript support in Wine MSI is currently the problem leading to the absence of some features of the install (after applying the appropriate attached patch above to bypass the "This module is not designed for direct execution" error). Here is why.
"Vector NTI 10.msi" is called with the following parameters:
trace:msi:MsiInstallProductA "c:\Program Files\Informax Installations\Vector NTI 10.msi" " FEATLST="Vector;ProteinTools;Contig;Alignment;WebConnectivity;Remote_DS;Data;SharedDlls;ShareCommon;Watson;Nautilus" ALLUSERS="1" AUTOREMOVE="" DBUPGRADETYPE="New" DLS="" DLSURL="" EXECDIR="c:\Program Files\Invitrogen\Vector NTI Advance 10\" IMEDLL="c:\PROG~FBU\INFO~M4Y\ime.dll"...
Note FEATLST which includes Vector. Now if you look at the JScript attachment and the function ExpandFeatList, the relevant part looks like this:
function ExpandFeatList() { //var Installer = new ActiveXObject( "WindowsInstaller.Installer" ); var db = Session.Database; var FeatLst = Session.Property( "FEATLST" ); var FeatureList; var Installed = Session.Property( "Installed" ); var result; var str="";
if( FeatLst!= null && FeatLst != "" ) { FeatureList = GetArray( FeatLst ); result=""; for( i in FeatureList ) { str = ExpandOneFeature( FeatureList[i],db ); if( result != "" ) result += ","; result += str; } //WScript.Echo( result ); Session.Property( "ADDLOCAL" ) = result; }
I guess you'd have to look in the file, but expandonefeature takes all features and makes a string with their sub-features. Now the "Vector" feature encompasses, for example the "Vnti_modules" component which has the main program executable. Hence it is missing. The trick is that the ADDLOCAL is normally empty (but not in the other MSI files I don't think, which is why other stuff gets installed) and gets filled in by this JScript.