473,385 Members | 1,901 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,385 software developers and data experts.

WIX component question

Hello ,

I have to install 2 dlls to the GAC using an MSI created by WIX. The
following piece of code works as desired :-

<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'>
<Directory Id='WixExampleProductFolder' Name='Example'
LongName='Test Directory'>
<Component Id="Assemblies_GAC" Guid="D50D93D8-B5EF-46f4-
A304-869ADBA389F9" DiskId="1">
<File Id="foo_GAC.dll" KeyPath="yes" Assembly=".net"
ProcessorArchitecture="msil" Name="foo1.dll"
LongName="xxxxxxxxxxxxxxxxxxx.dll" src="C:\xxxxxxxxxxxxxxxxxxx.dll" />
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id='TestFileProductFeature' Title='Wix File Product Feature'
Level='1'>
<ComponentRef Id='Assemblies_GAC' />
</Feature>

---------------------------------------------------------------------------------------------------------------------------------------

the above code installs xxxxxxxxxxxxxxxxxxxxx.dll to the GAC but when
I try to install a second dll (yyyyyyyyyyyyyyy.dll) into the GAC using
the following piece of code:-
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'>
<Directory Id='WixExampleProductFolder' Name='Example'
LongName='Test Directory'>
<Component Id="Assemblies_GAC" Guid="D50D93D8-B5EF-46f4-
A304-869ADBA389F9" DiskId="1">
<File Id="foo_GAC.dll" KeyPath="yes" Assembly=".net"
ProcessorArchitecture="msil" Name="foo1.dll"
LongName="xxxxxxxxxxxxxxxxxxx.dll" src="C:\xxxxxxxxxxxxxxxxxxx.dll" />
</Component>
<Component Id="Assemblies_GAC" Guid="D50D93D8-B5EF-46f4-
A304-869ADBA389F9" DiskId="1">
<File Id="foo_GAC.dll" KeyPath="yes" Assembly=".net"
ProcessorArchitecture="msil" Name="foo1.dll"
LongName="yyyyyyyyyyyyyyy.dll" src="C:\yyyyyyyyyyyyyyyyyy.dll" />
</Component>

</Directory>
</Directory>
</Directory>
<Feature Id='TestFileProductFeature' Title='Wix File Product Feature'
Level='1'>
<ComponentRef Id='Assemblies_GAC' />
</Feature>
I get the following error:-

Duplicate symbol 'Component:Assemblies_GAC' found.
So basically my question is how do I install multiple dlls into the
GAC using the same MSI?

May 25 '07 #1
1 4517
<ka*******@hotmail.comwrote in message
news:11**********************@w5g2000hsg.googlegro ups.com...
Hello ,

I have to install 2 dlls to the GAC using an MSI created by WIX. The
following piece of code works as desired :-

<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'>
<Directory Id='WixExampleProductFolder' Name='Example'
LongName='Test Directory'>
<Component Id="Assemblies_GAC" Guid="D50D93D8-B5EF-46f4-
A304-869ADBA389F9" DiskId="1">
<File Id="foo_GAC.dll" KeyPath="yes" Assembly=".net"
ProcessorArchitecture="msil" Name="foo1.dll"
LongName="xxxxxxxxxxxxxxxxxxx.dll" src="C:\xxxxxxxxxxxxxxxxxxx.dll" />
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id='TestFileProductFeature' Title='Wix File Product Feature'
Level='1'>
<ComponentRef Id='Assemblies_GAC' />
</Feature>

---------------------------------------------------------------------------------------------------------------------------------------

the above code installs xxxxxxxxxxxxxxxxxxxxx.dll to the GAC but when
I try to install a second dll (yyyyyyyyyyyyyyy.dll) into the GAC using
the following piece of code:-
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'>
<Directory Id='WixExampleProductFolder' Name='Example'
LongName='Test Directory'>
<Component Id="Assemblies_GAC" Guid="D50D93D8-B5EF-46f4-
A304-869ADBA389F9" DiskId="1">
<File Id="foo_GAC.dll" KeyPath="yes" Assembly=".net"
ProcessorArchitecture="msil" Name="foo1.dll"
LongName="xxxxxxxxxxxxxxxxxxx.dll" src="C:\xxxxxxxxxxxxxxxxxxx.dll" />
</Component>
<Component Id="Assemblies_GAC" Guid="D50D93D8-B5EF-46f4-
A304-869ADBA389F9" DiskId="1">
<File Id="foo_GAC.dll" KeyPath="yes" Assembly=".net"
ProcessorArchitecture="msil" Name="foo1.dll"
LongName="yyyyyyyyyyyyyyy.dll" src="C:\yyyyyyyyyyyyyyyyyy.dll" />
</Component>

</Directory>
</Directory>
</Directory>
<Feature Id='TestFileProductFeature' Title='Wix File Product Feature'
Level='1'>
<ComponentRef Id='Assemblies_GAC' />
</Feature>
I get the following error:-

Duplicate symbol 'Component:Assemblies_GAC' found.
So basically my question is how do I install multiple dlls into the
GAC using the same MSI?

You have to give each Component a unique ID and reference both of the
components in the Feature.

May 25 '07 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: Ornac | last post by:
I understand that there is much involved in figuring up I/O throughput, but I'm hoping the answer to the following question will be a simple A, B OR C. Given the configuration below, what...
2
by: brazilnut52 | last post by:
I am going to outline the steps I go through to produce the problem. Hopefully this will help you understand the problem better I have created a simple COM DLL in .NET by using the COM class...
6
by: TnCoder | last post by:
Hi; I just moved from vb 6.0 to vb.net. I am trying to add MS Calendar control to my toolbox. After the control is added, it is not enabled. Is there dll I have to add? Can anyone who could give...
2
by: Edward Diener | last post by:
How does one specify in a component that a property is a pointer to another component ? How is this different from a property that is actually an embedded component ? Finally how is one notified in...
1
by: Gary Townsend | last post by:
Server OS: Windows 2000 Server SP4 IIS: 5.0 Component Language: Visual Basic 6.0 Hey folks quick question hopefully be a quick answer too... I built an ActiveX DLL Component to manipulate file...
1
by: Jim Bancroft | last post by:
I have an aspx page that calls a component living in an out-of-process assembly; specifically, a dll that's hosted in a COM+ server package. Whenever I debug my page and hit a breakpoint on the...
4
by: =?Utf-8?B?V2lsbWVyIEhlcm5hbmRleg==?= | last post by:
An ActiveX component created using ATL under Visual Studio 2003, and it is used in a ASP, runs perfectly under administrator or power users group, however this same object does not run under the...
11
by: BillGatesFan | last post by:
I have a web service which calls a .NET queued serviced component in COM+. I turned statistics on for the component. I call the component 10 times, 10 objects get created but they do not go away....
1
by: Reggie | last post by:
Hi and TIA. I have some question about designing a component and how to use it and where to place it. VS2005/ .net2.0/ Vista Business/ IIS7.0 I have a component DataSetToExcel.dll that I use in...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.