Go Premium for a chance to win a PS4. Enter to Win


knowing what to distribute?

Posted on 1998-12-26
Medium Priority
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 210 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 http://www2.aros.net/~press/utilities/dllman.htm

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 http://www.execpc.com/~sbd/DLLShow.html

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

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

Monitor input from a computer is usually nothing special.  In this instance it prevented anyone from using the computer.  This was a preconfiguration that didn't work.
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…
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 use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.

927 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