Solved

Accessing solutions

Posted on 2011-02-16
9
398 Views
Last Modified: 2012-05-11
Good day.

I have a solution with 8 dlls.  A second program that I am developing needs access to 4 of the dlls.   It seems logical that I should place these 4 dll projects in their own solution and then each program can access them.  I need to some guidance on how best to accomplish this .

Thanks
Vaughn Whitehead
 
0
Comment
Question by:vaughnwhitehead
  • 4
  • 2
  • 2
  • +1
9 Comments
 
LVL 16

Expert Comment

by:Swapnil Piparia
Comment Utility
Hi Vaughn,

           It would be good if you put the shared dll (shared between project or reused between the project) in GAC (Global Assembly Cache).

           Following two links will guide you to implement it.
           Global Assembly Cache
           http://msdn.microsoft.com/en-us/library/yf1d93sz.aspx    
           Gacutil.exe (Global Assembly Cache Tool)
           http://msdn.microsoft.com/en-us/library/ex0ss12c.aspx

Thanks,
Netswap.
0
 

Author Comment

by:vaughnwhitehead
Comment Utility
The dlls share referneces between them.  Would that make a difference?

VW
0
 
LVL 16

Expert Comment

by:Swapnil Piparia
Comment Utility

no it will not make difference if you compile dll (which is using other dll as reference) by adding reference of shared dll from GAC.

Thanks,
Netswap
0
 

Author Comment

by:vaughnwhitehead
Comment Utility
thanks, appreciate it

VW
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 83

Expert Comment

by:CodeCruiser
Comment Utility
You have DLL projects or compiled dlls?
0
 

Author Comment

by:vaughnwhitehead
Comment Utility
Currently the dlls are in projects.  One dll per project.  It seems that I should move the dlls into one assembly as classes.

Good, bad ??
0
 
LVL 5

Accepted Solution

by:
andr_gin earned 200 total points
Comment Utility
The most dangerous things when working with DLL projects:

1.) If you stop working on a project (when it reaches RTM status), archive software AND library. There is nothing worse than if you open your project one year later for a minor change and notice that you have done some serious breaking changes to the library in the meantime for other projects. For these minor changes work with the old, tested library

2.) Keep one version: Always compile and ship both solutions at the same time. There is nothing more annoying than if you notice that you compiled project1 with an older version of the library and project2 with a newer version

3.) Put dll projects with critical references into another project: If you have dll projects that depends on installed software (COM/ActiveX controls) than put them into another project only for that software.

4.) Be careful which .NET version and CPU to target:
If you target a dll to a higher .NET version than the user needs that version, even if he does not need the functionality.
If you have a .NET program that is set to "Auto" and your library is set to "x86" than the dll cant be loaded on a 64bit system. I prefer setting everything to x86. Then you cant be wrong.
0
 
LVL 83

Assisted Solution

by:CodeCruiser
CodeCruiser earned 50 total points
Comment Utility
> It seems that I should move the dlls into one assembly as classes.
Depends on many factors such as number of namespaces/classes, size of classes, dependency of classes on each other, size of produced DLL, relevance of classes to each other etc.
0
 

Author Closing Comment

by:vaughnwhitehead
Comment Utility
Thanks for the input.  If anyone knows of a good text that covers program structural philosophy instead of the usual bland review I would appreciate a heads up.

Thanks

vswhitehead@gmail.com
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

Windows Script Host (WSH) has been part of Windows since Windows NT4. Windows Script Host provides architecture for building dynamic scripts that consist of a core object model, scripting hosts, and scripting engines. The key components of Window…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
This video teaches viewers about errors in exception handling.
The goal of the tutorial is to teach the user how to use functions in C++. The video will cover how to define functions, how to call functions and how to create functions prototypes. Microsoft Visual C++ 2010 Express will be used as a text editor an…

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now