Let's assume you have a C# project in Visual Studio. In that project, you reference an assembly (DLL) created by another of your projects. Because both projects are in active development, the version number of the referenced assembly changes frequently.
There is one easy way to solve this:
Add a reference to the project by clicking "Add Reference..." and choosing from the tab "Projects". But this has two downsides:
- The target project needs to be in the same solution.
- The target project had better be a C# project, too. If it is a C++ project, for example, you will not be able to compile the (source/referencing) project in Blend.
But there is an alternative:
Add a reference to the compiled DLL by clicking "Add Reference..." and choosing from the tab "Browse". This seems to work fine initially, until the target DLL is updated and its version number changes. Then all hell breaks loose and there is no way to fix this - from the GUI.
But under the covers, everything is pretty simple. When you add a DLL reference, the IDE creates an entry like the following in the project file (*.CSPROJ):
<reference include="SomeTargetDLL, Version=1.0.0.123,
Culture=neutral, processorArchitecture=x86" />
As is pretty obvious once viewed in code: the reference contains a version definition tag. Remove that, and you are good. In the above example, I simplified the line to:
<reference include="SomeTargetDLL" />
Helge Klein is an independent consultant and developer. As a consultant, he has worked in Windows and Citrix projects for various larger German corporations. As a developer, he architected sepago's user profile management product sepagoPROFILE whose successor is now available as Citrix Profile Management. In 2009 Helge received the Citrix Technology Professional (CTP) Award, in 2011 he was nominated a Microsoft Most Valuable Professional (MVP).
Helge's professional interests are focused on Microsoft server technologies, various Citrix products and programming in several languages. He publishes his knowledge in English in his blog at
http://helgeklein.com/blog. Helge can also be found on Twitter as
@HelgeKlein. He has presented on many occasions, e.g. Citrix TechEdge Munich 2009, ice Lingen (2009 and 2011), PubForum (2010 and 2011), Microsoft TechDay Online 2010, Citrix Synergy 2011 and 2012.
Helge is the author of
SetACL, a powerful tool for managing Windows permissions from the command line or from scripts and programs. SetACL is open source and has been downloaded more than 500,000 times. SetACL's modern cousin
SetACL Studio comes with an intuitive graphical user interface and is available for a small fee. Another popular tool,
Delprof2, automates the deletion of user profiles.
Helge lives in Cologne, Germany.