Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 111821
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T02:26:50+00:00 2026-05-11T02:26:50+00:00

I have a C++/MFC app on windows – dynamically linked it’s only 60kb static

  • 0

I have a C++/MFC app on windows – dynamically linked it’s only 60kb static it’s > 3Mb.
It is a being distributed to customers by email and so needs to be as small as possible.

It statically links the MFC and MSCVRT libraries – because it is a fix to some problems and I don’t want more support calls about missing libs – especially the very helpful ‘application configuration is incorrect’ one!

Is there anyway to strip a Windows exe of all the extra MFC stuff that is the dll but that I’m not using?
Or tell it to dynamically link MSVCRT (which must be present) but statically link the MFC dll which might not be?

Edit – thanks that got it down to 1.6Mb that will have to do!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T02:26:51+00:00Added an answer on May 11, 2026 at 2:26 am

    You can’t mix the CRT/MFC dlls. Going from memory…

    As the other answer suggested, you can #define WIN32_LEAN_AND_MEAN and VC_EXTRALEAN. These probably won’t help though. They tend to be about minimizing build time – not the final exe size.

    Short of rebuilding MFC (Which is an option – you could rebuild it /Os, or if you are feeling really cheeky, /GL – but this will probably lead to more downstream fun – hopefully it’s already built /Gy).

    OK. Simple things to try. Build your app with /GL /Os /GF /Gy /GA. In the linker you more or less want /OPT:REF and /OPT:ICF and /LTCG.

    I have to say – a release build from 30k to megabytes is a bit much. You could also pass /map: to the linker and see what’s taking all that space – but that’s very very tedius.

    It almost sounds like MFC wasn’t built with /Gy – but that would be surprising.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 81k
  • Answers 81k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer linkButton.Attributes.Add("onmouseover", "yourChangeColorFunction();"); May 11, 2026 at 4:25 pm
  • Editorial Team
    Editorial Team added an answer Solution to your Line Break issue is below however, if… May 11, 2026 at 4:25 pm
  • Editorial Team
    Editorial Team added an answer rows is a shortcut to dataSet.rows. Returns the current data… May 11, 2026 at 4:25 pm

Related Questions

I have a C++/MFC app on windows - dynamically linked it's only 60kb static
I have a very large app, 1.5 million lines of C++, which is currently
I should preface this by saying I'm working on a pocket PC app and
When you create a new MFC application, the wizard creates the following block of
I'm working on a large, aging code base for an MFC app. The code

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.