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=""[SystemFolder]regsvr32.exe" /s "
[Bin]\MathParser.dll""/>
<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
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users