First because, I am beginner with WIX. But I did try going that way. I have about 50-60 COM DLL and one EXE. So, this is what I have done so far: 1. Use RegSpy2 tool to gather registry information from the COM, and then saved it in foo.reg file. 2. Passed foo.reg file through tallow to get bar.wxs file. I used these registry info from this file in my Product.wxs file. This didnt seem to work at all. I dont know what is going on, so I decided to invoke "batch file" till I figure out how to go about extracting registry information. This is sample of what I did for registering an Exe <Registry Root="HKCR" Key="AppID" Id="REPLACEME.ComReg0" /> <Registry Root="HKCR" Key="AppID\foo.exe" Name="AppID" Value="{2B7FED60-22A9-408B-B0C1-3232EFBDDCE0}" Type="string" Id="REPLACEME.ComReg1" /> <Registry Root="HKCR" Key="AppID\{2B7FED60-22A9-408B-B0C1-3232EFBDDCE0}" Value="bar" Type="string" Id="REPLACEME.ComReg2" /> <Registry Root="HKCR" Key="CLSID" Id="REPLACEME.ComReg3" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}" Value="FooManager Class" Type="string" Id="REPLACEME.ComReg4" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}" Name="AppID" Value="{2B7FED60-22A9-408B-B0C1-3232EFBDDCE0}" Type="string" Id="REPLACEME.ComReg5" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\LocalServer32" Value=""[INSTALLDIR]"" Type="string" Id="REPLACEME.ComReg6" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\ProgID" Value="bar.1" Type="string" Id="REPLACEME.ComReg7" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\Programmable" Id="REPLACEME.ComReg8" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\TypeLib" Value="{15CE8CF5-A7C2-4E31-9D37-8734E4330A98}" Type="string" Id="REPLACEME.ComReg9" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\VersionIndependentProgID" Value="bar" Type="string" Id="REPLACEME.ComReg10" /> <Registry Root="HKCR" Key="bar" Value="FooManager Class" Type="string" Id="REPLACEME.ComReg11" /> <Registry Root="HKCR" Key="bar\CLSID" Value="{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}" Type="string" Id="REPLACEME.ComReg12" /> <Registry Root="HKCR" Key="bar\CurVer" Value="bar.1" Type="string" Id="REPLACEME.ComReg13" /> <Registry Root="HKCR" Key="bar.1" Value="FooManager Class" Type="string" Id="REPLACEME.ComReg14" /> <Registry Root="HKCR" Key="bar.1\CLSID" Value="{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}" Type="string" Id="REPLACEME.ComReg15" /> <Registry Root="HKCR" Key="AppID" Id="REPLACEME.ComReg0" /> <Registry Root="HKCR" Key="AppID\foo.exe" > <Registry Name="AppID" Value="{2B7FED60-22A9-408B-B0C1-3232EFBDDCE0}" Type="string" Id="REPLACEME.ComReg1" /> </Registry> <Registry Root="HKCR" Key="AppID\{2B7FED60-22A9-408B-B0C1-3232EFBDDCE0}"> <Registry Value="bar" Type="string" Id="REPLACEME.ComReg2"/> </Registry> <Registry Root="HKCR" Key="CLSID" Id="REPLACEME.ComReg3"/> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}"> <Registry Value="FooManager Class" Type="string" Id="REPLACEME.ComReg4"/> <Registry Name="AppID" Value="{2B7FED60-22A9-408B-B0C1-3232EFBDDCE0}" Type="string" Id="REPLACEME.ComReg5"/> </Registry> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\LocalServer32"> <Registry Value=""D:\src\foo.exe"" Type="string" Id="REPLACEME.ComReg6" /> </Registry> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\ProgID"> <Registry Value="bar.1" Type="string" Id="REPLACEME.ComReg7"/> </Registry> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\Programmable" Id="REPLACEME.ComReg8" /> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\TypeLib"> <Registry Value="{15CE8CF5-A7C2-4E31-9D37-8734E4330A98}" Type="string" Id="REPLACEME.ComReg9"/> </Registry> <Registry Root="HKCR" Key="CLSID\{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}\VersionIndependentProgID"> <Registry Value="bar" Type="string" Id="REPLACEME.ComReg10" /> </Registry> <Registry Root="HKCR" Key="bar"> <Registry Value="FooManager Class" Type="string" Id="REPLACEME.ComReg11"/> </Registry> <Registry Root="HKCR" Key="bar\CLSID"> <Registry Value="{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}" Type="string" Id="REPLACEME.ComReg12"/> </Registry> <Registry Root="HKCR" Key="bar\CurVer"> <Registry Value="bar.1" Type="string" Id="REPLACEME.ComReg13"/> </Registry> <Registry Root="HKCR" Key="bar.1"> <Registry Value="FooManager Class" Type="string" Id="REPLACEME.ComReg14"/> </Registry> <Registry Root="HKCR" Key="bar.1\CLSID"> <Registry Value="{5A6C1627-EC3E-454F-9E27-D9CDFF5FA722}" Type="string" Id="REPLACEME.ComReg15"/> </Registry> Thanks, Anu
--- On Tue, 11/18/08, Rob Mensching <[EMAIL PROTECTED]> wrote: From: Rob Mensching <[EMAIL PROTECTED]> Subject: RE: [WiX-users] invoking batch file inside wxs file To: "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>, "General discussion for Windows Installer XML toolset." <wix-users@lists.sourceforge.net> Date: Tuesday, November 18, 2008, 12:39 PM Uhh, why don't you just author the registry keys in the .wxs file? A batch file won't rollback correctly. -----Original Message----- From: Kapoor, Anupama [mailto:[EMAIL PROTECTED] Sent: Tuesday, November 18, 2008 10:38 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] invoking batch file inside wxs file Hi Jim, I have already tried "deferred" but even that seems to fail. This batch file basically tries to register the COM components on the target machine. So, I want the batch file to run after the installer script has run, i.e after creating the installer, this script has to run to register the components. May be what I am trying to do, is not even possible. Please suggest. Thanks, Anu --- On Tue, 11/18/08, Jim Williams <[EMAIL PROTECTED]> wrote: From: Jim Williams <[EMAIL PROTECTED]> Subject: RE: [WiX-users] invoking batch file inside wxs file To: [EMAIL PROTECTED], "General discussion for Windows Installer XML toolset." <wix-users@lists.sourceforge.net> Date: Tuesday, November 18, 2008, 11:10 AM You might want to try deferred execution instead of immediate. This will run the custom action after InstallFinalize when the install script is run. Immediate causes it to be run when it is encountered when creating the installation script. <CustomAction Id='InvokeRegister' Property='CommandProcessorPath' ExeCommand='"[InstallDir]\Register.bat" "[InstallDir]\Drivers" Release x64' Execute='deferred' Impersonate='no' Return='check' /> Jim Williams -----Original Message----- From: Kapoor, Anupama [mailto:[EMAIL PROTECTED] Sent: Tuesday, November 18, 2008 8:42 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] invoking batch file inside wxs file Hi, I am trying to invoke a batch file from my foo.wxs, which I want it to "run" after my installer has been installed. So, I am doing something like this: <Property Id='CommandProcessorPath' Value='[SystemFolder]/cmd.exe/v:off /c' /> <CustomAction Id='InvokeRegister' Property='CommandProcessorPath' ExeCommand='"[InstallDir]\Register.bat" "[InstallDir]\Drivers" Release x64' Execute='immediate' Impersonate='no' Return='check' /> <InstallExecuteSequence> <Custom Action='InvokeRegister' After='InstallFinalize' /> </InstallExecuteSequence> I am running into issues with this. Can you please let me know what is incorrect here? Thanks much, Anu ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users