Update on msi JScript/VBScript support functions
mk144210 at bcm.tmc.edu
Fri Feb 23 19:22:05 CST 2007
On Fri, 2007-02-23 at 19:20 -0600, Misha Koshelev wrote:
> Hi, just wanted to update everybody on my work with this, sorry I have
> not been good at replying to personal emails lately. I am not currently
> attaching any code but will clean things up and then submit my patches
> to wine-patches soon.
> So, the good news is that, as a proof of concept, I have gotten the
> Vector NTI installer to work successfully, which requires the JScript
> functionality. Specifically, this tests custom actions 5/6 and 37/38,
> there are two other sets that would be nice to test (but it is all the
> same script handler so it should work).
> Also, to make this work, I had to implement the OLE automation
> interface. Now, I have not implemented the entire interface yet, but I
> have made the entire .tlb file for this and made a framework which makes
> implementing everything fairly straightforward (and everything is a
> wrapper around the existing MSI database functions, so there is no
> actual functionality, it is just adding new cases to the switch
> statements that call the MSI database functions appropriately).
> Basically, because of the MSI design where everything that is an object
> has an MSIHANDLE, I have made one Automation Object that each specific
> object "inherits" from by implementing its invoke function (minus basic
> parameter checking, etc. which is all done by the automation object) and
> passing it to create_automation_object with its CLSID. It is pretty easy
> to implement more functions, and I will try to keep on adding more,
> probably as patches that I will periodically send to wine-patches.
> Anyhow, look for my first patches in the next couple of days.
Almost forgot, one big caveat is right now for some reason Microsoft
Script 5.6 does not install properly on wine either (bummer), it looks
for some Scriptable.Dictionary (I am writing this from memory) object,
doesn't find it, and then doesn't want to run the script, so currently
one needs to install IE6 first to get Microsoft Script to work properly.
But in any case IE6 < IE6+native MSI which was required before, and I
think tracking down the Microsoft Script installation problem should not
be too bad.
More information about the wine-devel