?
Solved

Accessing solutions

Posted on 2011-02-16
9
Medium Priority
?
407 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
ID: 34909334
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
ID: 34909383
The dlls share referneces between them.  Would that make a difference?

VW
0
 
LVL 16

Expert Comment

by:Swapnil Piparia
ID: 34909634

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
What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

 

Author Comment

by:vaughnwhitehead
ID: 34910721
thanks, appreciate it

VW
0
 
LVL 83

Expert Comment

by:CodeCruiser
ID: 34915497
You have DLL projects or compiled dlls?
0
 

Author Comment

by:vaughnwhitehead
ID: 34922291
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 600 total points
ID: 34924048
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 150 total points
ID: 34924425
> 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
ID: 34931033
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

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

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.

Join & Write a Comment

Article by: evilrix
Looking for a way to avoid searching through large data sets for data that doesn't exist? A Bloom Filter might be what you need. This data structure is a probabilistic filter that allows you to avoid unnecessary searches when you know the data defin…
This article describes and provides a custom-made tool I wrote to give businesses a means of identifying commercial music content, without having to expend too much effort. Business recordings are easily identified from possibly illegal music files …
The viewer will learn how to implement Singleton Design Pattern in Java.
The viewer will learn how to clear a vector as well as how to detect empty vectors in C++.

579 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