473,394 Members | 1,761 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,394 software developers and data experts.

Strong name assignment to a circular reference

How can I compile two projects with a circular reference while giving them a
strong name?

There is a project that we have that has two components that reference each
other e.g. A<->B thus creating A.dll and B.dll. I have a project (e.g. R
with an assembly name of Com.MyCompany.R.dll) that has to use this mess and
access A. So, R->A. Well, Com.MyCompany.R.dll is going in the GAC. It is
set for strong name (entry in the assembly pointing to my sn.exe -k
generated file). However, projects A and B are not strong named, thus R
won't compile until A and B are strong named.

So, I have given them a strong assembly name (e.g. Com.MyCompany.A.dll and
Com.MyCompany.B.dll). I have added the assembly reference to the key file,
and generated an sn.exe -k key for each, also. However, neither A nor B
will compile since each depend on the other to be already compiled with a
strong name. Other than commenting out all the references to each other (if
that would even work), what might I do to get R in the GAC?

Any help would be greatly appreciated.

Thanks,

-John
Jul 21 '05 #1
2 1887
Unwind the circular reference.

Your post inspired a blog entry... see the solution at the link below:
http://blogs.msdn.com/nickmalik/arch...18/398601.aspx

Hope this helps,

--
--- Nick Malik [Microsoft]
MCSD, CFPS, Certified Scrummaster
http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a
programmer helping programmers.
--
"John E." <PleaseReply@usenet> wrote in message
news:eQ**************@TK2MSFTNGP09.phx.gbl...
How can I compile two projects with a circular reference while giving them
a
strong name?

There is a project that we have that has two components that reference
each
other e.g. A<->B thus creating A.dll and B.dll. I have a project (e.g. R
with an assembly name of Com.MyCompany.R.dll) that has to use this mess
and
access A. So, R->A. Well, Com.MyCompany.R.dll is going in the GAC. It
is
set for strong name (entry in the assembly pointing to my sn.exe -k
generated file). However, projects A and B are not strong named, thus R
won't compile until A and B are strong named.

So, I have given them a strong assembly name (e.g. Com.MyCompany.A.dll and
Com.MyCompany.B.dll). I have added the assembly reference to the key
file,
and generated an sn.exe -k key for each, also. However, neither A nor B
will compile since each depend on the other to be already compiled with a
strong name. Other than commenting out all the references to each other
(if
that would even work), what might I do to get R in the GAC?

Any help would be greatly appreciated.

Thanks,

-John

Jul 21 '05 #2
Thanks!

A funny note is that your blog was the exact issue... My mystical Project A
was our configuration library and and Project B was our logging library ;)

-John
"Nick Malik [Microsoft]" <ni*******@hotmail.nospam.com> wrote in message
news:SO********************@comcast.com...
Unwind the circular reference.

Your post inspired a blog entry... see the solution at the link below:
http://blogs.msdn.com/nickmalik/arch...18/398601.aspx

Hope this helps,

--
--- Nick Malik [Microsoft]
MCSD, CFPS, Certified Scrummaster
http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a
programmer helping programmers.
--
"John E." <PleaseReply@usenet> wrote in message
news:eQ**************@TK2MSFTNGP09.phx.gbl...
How can I compile two projects with a circular reference while giving them a
strong name?

There is a project that we have that has two components that reference
each
other e.g. A<->B thus creating A.dll and B.dll. I have a project (e.g. R with an assembly name of Com.MyCompany.R.dll) that has to use this mess
and
access A. So, R->A. Well, Com.MyCompany.R.dll is going in the GAC. It
is
set for strong name (entry in the assembly pointing to my sn.exe -k
generated file). However, projects A and B are not strong named, thus R
won't compile until A and B are strong named.

So, I have given them a strong assembly name (e.g. Com.MyCompany.A.dll and Com.MyCompany.B.dll). I have added the assembly reference to the key
file,
and generated an sn.exe -k key for each, also. However, neither A nor B
will compile since each depend on the other to be already compiled with a strong name. Other than commenting out all the references to each other
(if
that would even work), what might I do to get R in the GAC?

Any help would be greatly appreciated.

Thanks,

-John


Jul 21 '05 #3

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

Similar topics

16
by: Robert Mark Bram | last post by:
Hi All! Is there a way to reference a window by name without doing something like this: open (, 'windowName'); The open method will open a blank window if there is no window with such a name....
2
by: Vera | last post by:
I have two assemblies that each consist of several classes. Each object instantiated from those classes can have one or more child- and/or parentobjects that are also instantiated from those...
10
by: Tony Jones | last post by:
Can anyone think of a reason why a 3rd party vendor writing .NET components would NOT strong name their assemblies? What harm does adding a strong-name to assembly present - I would think none...
2
by: John E. | last post by:
How can I compile two projects with a circular reference while giving them a strong name? There is a project that we have that has two components that reference each other e.g. A<->B thus...
6
by: Manuel Lopez | last post by:
Hello, I have a Web Project (UserControls.dll) with some user controls that is shared by many asp.net web applicattions. What we do is copy UserControls.dll to all the applications bin...
6
by: Stephen Robertson | last post by:
We are currently in a dead end with a circular reference issue using vb.net, and are hoping someone might help us resolve it. Idea... We have frmmain calling frmperson (dim f as new frmperson)...
6
by: Craig Buchanan | last post by:
i have two classes: User and Group. Each is in their own assembly. The User class has Groups collection and the Group has a Users collection. I would like to strongly-type these collections,...
0
by: John Liu | last post by:
Recently I had to do some really nasty work (I consider any IL work nasty) to get a set of (not strong named) 3rd party assemblies to compile with our solution (which is strong named). ...
6
by: raylopez99 | last post by:
Anybody use Strong Name Signing? I think this is used by default for Resource files, which is one reason perhaps I can't get my resource files to work (somehow the public key is messed up, perhaps...
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
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
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
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
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
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

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.