Open-Sourcing MFC: What Do You Think?

There is an idea on Visual Studio User Voice about open-sourcing MFC.

What do you think about it? Would it be good or bad for the development of MFC and for the MFC community?

For new C++ projects there are several options available. For example: using Qt to develop cross-platform C++ applications, or WTL for something more Windows-specific, just to name a few.

But MFC is still used in several C++ legacy projects (including very large enterprise applications) still active in maintenance mode. With MFC open source, the community and Microsoft could submit new code and patches while Microsoft could monitor the quality of the submitted code and support an official branch.

My original Visual C++ 6 box.
My original Visual C++ 6 box (…memories from the MFC’s “Golden Days” 🙂 )

Please feel free to share your opinions on Visual Studio User Voice, or leave comments here.

Please try to develop a civilized discussion, and be courteous and kind even when you disagree.

5 Replies to “Open-Sourcing MFC: What Do You Think?”

  1. I think this is better than just removing it, but it would be nice if it could be included in new VS versions fora few years just because of legacy apps. That, or it would be nice to have a way to install it like you do other plug-ins so it’s easily addable. Otherwise, it may deter some people’s upgrade path.

    MFC still has a lot of potential and, maybe opening it up to open source to allow programmers who have the time and desire to upgrade it makes sense. On the other hand, some of the changes MFC really needs might make it less usable for legacy applications where people may not want to make changes to adapt.

    It’s a tough call. It may be better just to leave it alone and ensure it still works for each new release for a while.

  2. Oh my god MFC, it’s true that a technology never dye, to a complete revival also you need to make an open source MFC cross platform.

    1. I doubt many of the MFC idioms (BOOL, TRUE etc), or Microsoft’s complete typedef of the underlying native types of the language would be accepted as a cross-platform GUI development solution. (Disclaimer: I spent the late 90’s and early 2000’s developing in MFC and loved it for what it was, a means to develop native Windows desktop applications.)

      More recently, I’ve developed many cross-platform applications using wxWidgets and more recently Qt and they offer a much more native language experience. MFC would have to change drastically in order to catch up.

      I just don’t feel it would be accepted as a viable cross-platform alternative.


  3. Definitely yes.
    The online voices are inevitably louder about newer and shinier technologies, but I know for a fact that MS telemetry indicates that MFC users are far from being a minority. For good reasons too: beyond the heavy burdeon of legacy – MFC is still the only native UI framework properly integrated into VS (integrated visual editor).
    It seems nearly official that MS devotes just enough dev resources to keep MFC barely alive, so opening it up to the community seems an obvious win-win.

Leave a Reply

Your email address will not be published. Required fields are marked *