>
> The File element doesn't write any registry values. How are you creating
> the values that go to the wrong place?
>
If values aren't being set automatically, then I'm not sure how a Windows XP
install, or a Vista install with UAC turned on winds up having values in the
CLSID section to indicate "InprocServer32" path, etc. I never explicitly
write those, but they show up in the registry. I can only assume this is
done magically using info inside the <file> element. I'll paste the
component code for clarity. A whole bunch of keys with words looking like
the stuff inside 'file' and 'class' elements match what I'm seeing in the
registry. I can only conclude that WiX is setting up the MSI to do this
automatically. Note, the component code and the 2 registry lines following
it were created using the heat.exe utility on the toolbar/bho dll file (I
think it was heat... not positive. Some tool spit out some XML and I
included it in my main WiX file).
<Component Id="My_BHO" Guid="{component guid}">
<File Id="My_BHO.dll" Name="My_BHO.dll" KeyPath="yes" Source="$(
var.DLLPATH)/My_BHO.dll" Vital="yes">
<Class Id="{guid}" Context="InprocServer32" Description="My Toolbar"
ThreadingModel="apartment">
<ProgId Id="My_BHO.MyToolbar.1" Description="My Toolbar">
<ProgId Id="My_BHO.MyToolbar" Description="My Toolbar"/>
</ProgId>
</Class>
<TypeLib Id="{guid}" Description="My_BHO 1.0 Type Library" Language="0"
MajorVersion="1" MinorVersion="0">
<AppId Description="My_BHO" Id="{guid}">
<Class Id="{guid}" Context="InprocServer32" Description="myVidoop
Plugin" ThreadingModel="apartment">
<ProgId Id="My_BHO.MyBHO.1" Description="My Plugin">
<ProgId Id="My_BHO.MyBHO" Description="My Plugin"/>
</ProgId>
</Class>
</AppId>
<Interface Id="{guid}" Name="IMyBHO" ProxyStubClassId="{numbers}"
ProxyStubClassId32="{numbers}"/>
</TypeLib>
</File>
<RegistryValue Root="HKCR" Key="AppID\My_BHO.DLL" Name="AppID"
Value="{guid}" Type="string" Action="write"/>
<RegistryValue Root="HKCR" Key="CLSID\{guid}\TypeLib" Value="{guid}"
Type="string" Action="write"/>
<!-- the following values are being set correctly -->
<RegistryValue Root="HKLM" Key="Software\Microsoft\Internet
Explorer\Toolbar" Name="{guid}" Value="" Type="binary" Action="write"/>
<RegistryValue Root="HKLM"
Key="Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper
Objects\{guid}" Value="My_BHO" Type="string" Action="write"/>
<RegistryValue Root="HKLM"
Key="Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper
Objects\{guid}" Name="NoExplorer" Value="1" Type="integer" Action="write"/>
<RegistryValue Root="HKLM" Key="SOFTWARE\Company\Product"
Name="background_url" Value="url(https://blah)" Type="string"
Action="write"/>
<RegistryValue Root="HKLM" Key="SOFTWARE\Company\Product"
Name="toolbar_target" Value="https://blah" Type="string" Action="write"/>
<RegistryValue Root="HKLM" Key="SOFTWARE\Company\Product" Name="version"
Value="$(var.VERSION)" Type="string" Action="write"/>
<RegistryValue Root="HKLM" Key="SOFTWARE\Company\Product"
Name="local_root" Value="C:\blah\" Type="string" Action="write"/>
</Component>
Am I doing something incorrectly?
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users