Hi,

I have a problem to register a COM DLL via WiX 3.0. This COM DLL is 
dependent on a certain Merge Module that is also installed. From Vista on, 
SelfRegCost cannot be used in this case, because it will be called not 
until the Merge Modules are installed and COM registration will fail (we 
are installing on Windows 7). So we do it via a custom action. As the 
Merge Modules are installed during InstallFinalize, we run the 
CustomAction after InstallFinalize (via an entry in InstallExecuteSequence
).

  <Fragment>
    <!-- Install and register MathParser.dll. From Windows Vista on this 
cannot be done with
         flag SelfRegCost any more, because the Windows Installer changed 
so that Merge Modules
         are not installed until InstallFinalize. -->
    <CustomAction Id="SetCmdLine_RegisterMathParser"
                  Property="QtExecCmdLine"
                  Value="&quot;[SystemFolder]regsvr32.exe&quot; /s &quot;
[Bin]\MathParser.dll&quot;"/>
    <CustomAction Id="RegisterMathParser"
                  BinaryKey="WixCA"
                  DllEntry="CAQuietExec"/>
 
    <DirectoryRef Id="Bin" FileSource="..\App\RunTime\Release">
      <Component Id="BinMathParser" Guid="
5E00F62F-9BE3-470c-843B-91A85E02DD20">
        <File Name="MathParser.dll" />
      </Component>
    </DirectoryRef>
  </Fragment>

But this works only when being logged in as an administrator under Windows 
7. As a restricted user, the installer asks for the administrator 
password, however starts custom actions as a restricted user. To start the 
custom action with elevated privileges it is necessary to add:

                  Impersonate="no"
                  Execute="deferred"

But this makes it impossible to start the custom action after the Merge 
Modules are installed (error ICE77). So how can we register a COM DLL 
which is dependent on prior installation of a Merge Module? It seems to be 
impossible to change the point of time when the Merge Modules are 
installed by modifying the InstallExecuteSequence.

Thank you!

Kind regards,
Stefan
------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to