Yes, the Class element would handle the first couple registry keys.We don't have elements for the extra Shell folder stuff today though so given how much registry there is specific to shell-goo, you might be best off with the registry elements. <smile/> A WiX extension that handled the Shell registry goo would be interesting. On Tue, Jun 21, 2011 at 2:48 PM, Brad Lemings <b...@rebit.com> wrote:
> Greetings, > > This is a list of registry entries that I've uncovered for a couple of COM > server components: > > <RegistryValue Root="HKLM" > Key="SOFTWARE\Classes\CLSID\$(var.MyNSEGUID)\DefaultIcon" ... > <RegistryValue Root="HKLM" > Key="SOFTWARE\Classes\CLSID\$(var.MyNSEGUID)" Name="InfoTip" ... > <RegistryValue Root="HKLM" > Key="SOFTWARE\Classes\CLSID\$(var.MyNSEGUID)\Shell Folder" Name="Attributes" > Value="-1593835520" ... > <RegistryValue Root="HKLM" > Key="SOFTWARE\Classes\CLSID\$(var.MyNSEGUID)\Shell Folder" > Name="QueryForOverlay" ... > <RegistryValue Root="HKLM" > Key="SOFTWARE\Classes\CLSID\$(var.MyNSEGUID)\Shell Folder" > Name="WantsFORPARSING" ... > <RegistryValue Root="HKLM" > Key="SOFTWARE\Classes\CLSID\$(var.MyNSEGUID)\Shell Folder" > Name="PinToNameSpaceTree" ... > <RegistryValue Root="HKLM" > Key="Software\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\$(var.MyNSEGUID)" > ... > <RegistryValue Root="HKLM" > Key="Software\Microsoft\Windows\CurrentVersion\Explorer" > Name="GlobalAssocChangedCounter" ... > <RegistryValue Root="HKLM" > Key="Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" > ... > > <RegistryValue Root="HKLM" > > Key="SOFTWARE\Classes\*\ShellEx\{00021500-0000-0000-C000-000000000046}" > Value="$(var.MyShellExtInfotipGUID)" > <RegistryValue Root="HKLM" > > Key="SOFTWARE\Classes\AllFileSystemObjects\Shellex\ContextMenuHandlers\CMyContextMenuExt" > Value="$(var.MyShellExtGUID)" > <RegistryValue Root="HKLM" > > Key="Software\Microsoft\Windows\CurrentVersion\Explorer" > Name="GlobalAssocChangedCounter" > <RegistryValue Root="HKLM" > Key="Software\Microsoft\Windows\CurrentVersion\Shell > Extensions\Approved" > Name="$(var.MyShellExtInfotipGUID)" > Value="CMyInfotipExt" > <RegistryValue Root="HKLM" > Key="Software\Microsoft\Windows\CurrentVersion\Shell > Extensions\Approved" > Name="$(var.MyShellExtGUID)" > Value="CMyContextMenuExt" ... > > My question is, are any of these registry entries already handled > automagically by Class, ProgId, or other Wix elements? Is this the > conventional way to register COM components in Wix? > > -----Original Message----- > From: Brad Lemings > Sent: Monday, June 20, 2011 4:33 PM > To: General discussion for Windows Installer XML toolset. > Subject: RE: [WiX-users] Replacing regsvr32 commands with Wix elements > > No, I think you're right on the money. The NSE DLL that I'm testing > requires MFC, Qt, and a host of other dependencies. Being that I had to > rebuild my Service so that it is statically linked just so Windows Installer > could start it at the expected time, the MFC/ATL dependency is no surprise. > :P > > > -----Original Message----- > > From: Hoover, Jacob [mailto:jacob.hoo...@greenheck.com] > > Sent: Monday, June 20, 2011 4:07 PM > > To: General discussion for Windows Installer XML toolset. > > Subject: Re: [WiX-users] Replacing regsvr32 commands with Wix elements > > > > > > If I had to guess, this component may rely on other components. I > > swear I saw something along the lines of this with an ATL component. > > When the registry redirection occurs inside of Heat, it makes the > > registry look empty. As such, if your component required ATL it would > > fail inside its > > regsvr32 procedure. > > > > I had pondered making a patch myself, where heat would allow for a > > reg script to be passed as a parameter (basically reg script being > > another heat fragment). With that, you could create an ATL.reg using > > heat against the ATL DLL, and then pass it as a parameter to the Heat > call for your component. > > > > The only problem would be writing the logic to identify which > > attributes were changed by your DLL compared to your reg script. > > > > I could be way off base, but I think I could generate a reproducible > test case. > > > > -----Original Message----- > > From: Brad Lemings [mailto:b...@rebit.com] > > Sent: Monday, June 20, 2011 4:47 PM > > To: General discussion for Windows Installer XML toolset. > > Subject: Re: [WiX-users] Replacing regsvr32 commands with Wix elements > > > > My guess is it is not safe to ignore this warning. The generated Wix > > source contains nothing but a DirectoryRef, a Component, and File > > element. I know more is required to register a COM server than that. > > So heat does not work. Question now is, why not? > > > > -----Original Message----- > > From: Brad Lemings > > Sent: Monday, June 20, 2011 3:42 PM > > To: General discussion for Windows Installer XML toolset. > > Subject: RE: [WiX-users] Replacing regsvr32 commands with Wix elements > > > > > > What does "Unable to load file: error 93" mean? > > > > Here's the entire warning message: > > > > heat.exe : warning HEAT5150 : Could not harvest data from a file > that > > was expected to be a SelfReg DLL: C:\ Builds\MyNSE\MyNSE.dll. If this > > file does not support SelfReg you can ignore this warning. > > Otherwise, this error detail may be helpful to diagnose the failure: > > Unable to load file: C:\Builds\MyNSE\MyNSE.dll, error: 193 > > > > When I run the command "regsvr32 MyNSE.dll", the command executes > > successfully. Safe to ignore this warning? > > > > -----Original Message----- > > From: Dave Brotherstone [mailto:dav...@pobox.com] > > Sent: Monday, June 20, 2011 1:58 PM > > To: General discussion for Windows Installer XML toolset. > > Subject: Re: [WiX-users] Replacing regsvr32 commands with Wix elements > > > > > > > > -----Original Message----- > > > From: Brad Lemings [mailto:b...@rebit.com] > > > Sent: Monday, June 20, 2011 1:19 PM > > > To: General discussion for Windows Installer XML toolset. > > > Subject: Re: [WiX-users] Replacing regsvr32 commands with Wix > > > elements > > > > > > Hmm. How can I capture the effects of the regsvr32 command in a > > > .reg file which is what Heat expects? > > > > > > > You don't need to - heat file yourfile.dll -o install_actions.wxs > > will capture everything that regsvr32 does (or actually what your > > DllRegisterServer call in the DLL does). > > > > It really is that easy :) > > ---------------------------------------------------------------------- > > -- > > ------ > > EditLive Enterprise is the world's most technically advanced content > > authoring tool. Experience the power of Track Changes, Inline Image > > Editing and ensure content is compliant with Accessibility Checking. > > http://p.sf.net/sfu/ephox-dev2dev > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > ---------------------------------------------------------------------- > > -- > > ------ > > EditLive Enterprise is the world's most technically advanced content > > authoring tool. Experience the power of Track Changes, Inline Image > > Editing and ensure content is compliant with Accessibility Checking. > > http://p.sf.net/sfu/ephox-dev2dev > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > ---------------------------------------------------------------------- > > -------- EditLive Enterprise is the world's most technically advanced > > content authoring tool. Experience the power of Track Changes, Inline > > Image Editing and ensure content is compliant with Accessibility > > Checking. > > http://p.sf.net/sfu/ephox-dev2dev > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > ------------------------------------------------------------------------------ > EditLive Enterprise is the world's most technically advanced content > authoring tool. Experience the power of Track Changes, Inline Image > Editing and ensure content is compliant with Accessibility Checking. > http://p.sf.net/sfu/ephox-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > -- virtually, Rob Mensching - http://RobMensching.com LLC ------------------------------------------------------------------------------ All of the data generated in your IT infrastructure is seriously valuable. Why? It contains a definitive record of application performance, security threats, fraudulent activity, and more. Splunk takes this data and makes sense of it. IT sense. And common sense. http://p.sf.net/sfu/splunk-d2d-c2 _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users