deploying a DLL

I have VB.NET DLL.  It is used by multiple solutions.  In Visual Studio, when I add the reference, it copies the DLL, XML and PDB file into the BIN folder.   When I deploy my apps in a production environment, I do not multiple copies of these files in each app folder.   How do I deploy correctly?  
LVL 1
HLRosenbergerAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
khairilConnect With a Mentor Commented:
Hi,

You can deploy them into GAC, so that they can be shareable. This is how to use Visual Studio to deploy them into GAC, http://support.microsoft.com/kb/324168
0
 
CodeCruiserConnect With a Mentor Commented:
You need to give your DLL a strong name

http://msdn.microsoft.com/en-us/library/xc31ft41.aspx

and then deploy it to GAC(Global Assembly Cache)

http://support.microsoft.com/kb/315682
0
 
khairilConnect With a Mentor Commented:
Do not worry about XML and PBD file. The XML just about resource manager and PBD is debug file.  You just need to include the DLL into your distribution package.

Make sure you set your final compilation set to release mode. Debug mode have at lot of other symbols put into the binary, which will have performance impact on during runtime.
0
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

 
HLRosenbergerAuthor Commented:
Thanks to all
0
 
HLRosenbergerAuthor Commented:
What happens what I compile a new version of the DLL?  I just redeploy into the GAC on the target system?   What does the strong name signing do?
0
 
khairilCommented:
Yup, if your DLL does not require any other resources that have been changed, then you can simple copy the updated assembly in the GAC.

Strong names satisfy the following requirements:
1. Guarantee name uniqueness as an assembly generated with one private key has a different name than an assembly generated with another private key.

2. Strong names protect the subsequent  version lineage of an assembly

3. Strong name passed the .NET Framework security checks guarantees that the contents of the assembly have not been changed since it was built.

This article is very good explaination about Strong Name, have time to read it, http://www.codeproject.com/KB/security/StrongNameExplained.aspx

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.