How to include old fashioned DLL in a C# project/solution?

B

bob_jeffcoat

Hello,

In my C# solution the MathsUtility Project uses a few fortran DLLs.
What is the correct way to specify the dependancy of these DLLs?

Initially I just stuck the DLLs in a directory on the System Path,
this is a disaster as far as running different versions of the
Solution (sometimes a bug gets reported and I might want to run an old
version along side a new version, the DLLs may be different).

My next plan was to add the DLLs to the project's file list, so they
appear along side the ".cs" files, and set the "Copy To Output
Directory" property to "Copy if newer". This seems to work OK in
Visual Studio, the DLLS get copied to all the 'bin' directories of all
the projects that depend on MathUtility. But when I build it from the
command line, as would be done with Cruise Control, it just goes crazy
copying the DLLs again and again for ages.

Anyone have any ideas?

Thanks,

bob
 
C

Cowboy \(Gregory A. Beamer\)

Focus on Cruise Control to get rid of the circular dependency. I do not know
how to do this, but I know we did it on one project. Until you conquer the
fighting, you are going to continue to have issues.

A longer term option is to run DSM on the project and reorg using the
information found. You want to try to stack the projects so the dependencies
only go in one direction.Once that is done, you get rid of the constant
swapping of libs.

Another possible solution is to move into a more SOA architecture, but I
would not just jump into this, using assembly boundaries as service
boundaries, as you will end up with a mess. I do not suggest this as a short
term, immediate type of solution.

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA
http://gregorybeamer.spaces.live.com
Co-author: Microsoft Expression Web Bible (upcoming)

************************************************
Think outside the box!
************************************************
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top