I also meant to add, in my Product.wxs file I essentially have:

<Product>
    <Directory Id="TARGETDIR" Name="SourceDir">
</Product>
<Fragment>
    <DirectoryRef Id="TARGETDIR">
        ...
    </DirectoryRef>
</Fragment>
<Fragment>
    <DirectoryRef Id="dir97176AEC31E49EAABA96A880A1E2D08E">
        ...
    </DirectoryRef>
</Fragment>


Do any of the IDs in the <Fragment> sections need to match with the IDs in
the <Product> section?  I've essentially copied the entire output which
was generated by heat and added it verbatim to my Product.wxs file.

Jeff


> This isn't working for me.  I'm harvesting the COM registration info with:
>
> heat file MyDLL.dll -template:fragment -ag -out fragment.wxs
>
> And I have appended my Product.wxs file with the generated output.  My
> Product.wxs is now along the lines of:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
>     <Product ...>
>         ...
>     </Product>
>     <Fragment>
>         <DirectoryRef Id="TARGETDIR">
>            <Directory Id="dir97176AEC31E49EAABA96A880A1E2D08E" Name="Full
> Release" />
>         </DirectoryRef>
>     <Fragment>
>     <Fragment>
>         <DirectoryRef Id="dir97176AEC31E49EAABA96A880A1E2D08E">
>             <Component Id="cmp294312A740872F38057FC7053FF85C0D" Guid="*">
>                 <File Id="fil47F0AB91FEDF117C1BF54D9F25EC8F88"
> KeyPath="yes" Source="SourceDir\Full Release\MyDLL.dll">
>                     ...
>                 </File>
>             </Component>
>         </DirectoryRef>
>     <Fragment>
> </Wix>
>
>
> This compiles fine, and runs, but after the installer is completed, my DLL
> hasn't been registered.  I'm not very familiar with the Fragment node.  Is
> there anything else I need to do to get the registry values to be set?
>
> Thanks,
>
> Jeff
>
>
>> The recommended way now is typically to run heat.exe to "harvest" the
>> com
>> registration information out of your DLL. This way it won't actually run
>> the code from the DLL at install-time (which is more likely to fail,
>> won't
>> handle all of MSI's transactionality appropriately, and is generally a
>> non-recommended solution) and instead will figure out what exactly what
>> registry keys your DLL needs, and put that information into the MSI (the
>> recommended, more robust way).
>>
>> Generally you run the tool something like this:
>>      Heat file -template:fragment file.dll -out fragment.wxs
>>
>> This should generate some registry, etc. fragments which you can
>> reference
>> from the rest of your authoring via ComponentRef or ComponentGroupRef
>> elements.
>
>
>
>
> ------------------------------------------------------------------------------
> Download Intel&#174; Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>



------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to