knowing what to distribute?

Posted on 1998-12-26
Last Modified: 2013-11-14
I am a relative beginner to MSVC++ and I have a couple of fairly basic questions. Firstly, if I am building an MFC app, for example I just run the MFC app wizard and build a simple SDI application, what files should be distributed for deployment. Do I need to distribute the entire MFC42.dll even for this small application? In relation to this, are there any low cost (or free) setup software tools similar to installshield which can be recommended? Something like the utility which comes with VB would be nice.

Thanks and merry Christmas to all

Question by:agrillage
  • 2
LVL 11

Accepted Solution

alexo earned 70 total points
ID: 1181051
>> Do I need to distribute the entire MFC42.dll even for this small application?
In general, yes.  However, you may link your application with the static MFC library instead of the DLL so no DLL will be needed.

>> are there any low cost (or free) setup software tools similar to installshield which can be recommended?
First, MSVC comes with a basic version of Install Shield.  Also, you can search on the net.  See:

Author Comment

ID: 1181052
OK for the mfc42.dll, but what about other files? How do I get a list of all files necessary for distribution?

Thanks for the quick answer though Alexo. I promise not to extend the question further than this. The points will be yours.

LVL 11

Expert Comment

ID: 1181053
A list of DLLs is easy.  Each module contains a list of the DLLs it loads statically.  You can get the list using tools like quickview (comes with windows) or dumpbin (comes with msvc).  You can also get a 3rt party tool that will do a recursive scan.  One is available from

Now, if some modules load DLLs dynamically (using LoadModule() functions) you'll have to do a run-time analysis.  A tool that does that is available from

If your application is small you will probably benefit from statically linking to MFC, the C/C++ run-time library etc. instead of using the DLLs.

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Unable to start eclipse ? 17 153
Active Directory Audit 18 117
SBS 2008 Staged Migration to 365 2 80
Are the two lines the same? If not what is the difference? 2 22
Templates For Beginners Or How To Encourage The Compiler To Work For You Introduction This tutorial is targeted at the reader who is, perhaps, familiar with the basics of C++ but would prefer a little slower introduction to the more ad…
I have been scripting applications way too long and can never remember how to create an ISS file.  So I decided to write this article to act as my own knowledge base for future reference, and hope you will also benefit. An ISS file is a response …
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…
The viewer will learn how to user default arguments when defining functions. This method of defining functions will be contrasted with the non-default-argument of defining functions.

856 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