Page 7 of 9

Posted: Sat Jan 06, 2007 10:47 am
by QuestOfDreams
MFC is mainly used for CString class and Driver Selection/Level Load dialogs

Posted: Sat Jan 06, 2007 10:46 pm
by jonas
paradoxnj wrote:Sounds like it uses a precompiled header. stdafx.h is usually a precompiled header. In the project properties, does it link with MFC libs at all?
the stdafx.h links to several other MFC headers, which would require the MFC libs to work right?

Here's a list of Mfc headers included
  • #include <afxwin.h> // MFC core and standard components
    #include <afxext.h> // MFC extensions
    #include <afxdisp.h> // MFC Automation classes
    #include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
    #include <afxcmn.h> // MFC support for Windows Common Controls
You must be right Quest because in the RabidFrameworkMain.cpp it uses

Code: Select all

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdParam, int nCmdShow)
so they must have used it for the list boxes and stuff

Posted: Fri Jan 26, 2007 6:36 pm
by jonas
Did that help any or do I need to dig some more?

Posted: Fri Jan 26, 2007 6:42 pm
by paradoxnj
You can get rid of CString and use std::string instead. It's not much of a change and would eliminate the need for MFC making the RF executable much smaller.

Posted: Fri Jan 26, 2007 11:36 pm
by jonas
you got to be kidding is that it? if so why in the world were mfc's used?

Posted: Sun Jan 28, 2007 1:10 am
by QuestOfDreams
You can get rid of CString and use std::string instead. It's not much of a change and would eliminate the need for MFC making the RF executable much smaller.
Well, of course you can use std:string instead of CString but it's still quite some work replacing all occurrences of CString. Also CString has quite a few utility functions like TrimRight/TrimLeft, Format etc that need some extra coding when using std::string. The RF executable size would _not_ change much because mfc is used in a shared dll.
As mentioned earlier CString is not the only part of MFC used in RF...
if so why in the world were mfc's used?
Why not? MFC is widespread, fast to learn, easy to use and rather well documented...

Posted: Mon Jan 29, 2007 3:44 pm
by QuestOfDreams
OK, I've done it. MFC is gone and replaced with the standard windows/template libraries. I need to do some more testing to make sure everything works as expected though. I think this should be done by the end of the week.
Requirements for compiling are (everything is freely available):
Visual Studio C++ 2005 (Express and better)
Platform SDK
DirectX SDK

Posted: Mon Jan 29, 2007 4:14 pm
by scott
:D good news, now even i can have a go at getting multiplayer to work but doubt i would but hay jonas thats good news for u.

ps. ive just encounterd the language filter... was using it in its original context not what people use it for now but hay at least it works lol.

Posted: Mon Jan 29, 2007 5:37 pm
by Jay
yeah thats really good news thanks Quest! This could speed up the development on RF quite a bit! :D

Posted: Tue Jan 30, 2007 12:15 am
by jonas
wow thanks Quest that's great! I can't wait to try it.

Posted: Tue Jan 30, 2007 10:14 am
by federico
This is a big step forward to have developpers hacking the source also in the future. Thanks QoD.

Posted: Tue Jan 30, 2007 3:55 pm
by AndyCR
Thats GREAT! Thanks!! :D

Posted: Tue Jan 30, 2007 5:09 pm
by LtForce
No idea what you're talking about, but I see that you have some great news!

Posted: Tue Jan 30, 2007 8:56 pm
by Jay
Before this, only developers who had some prof. version of Visual C++ (and NOT the freely available Version of C++ that can be downloaded on the microsoft site) were able to compile the source code of RealityFactory. Now everyone who has a compiler can compile RealitFactory. This is great news because now improvements can be made by everyone who can program a bit, not just by Quest, Nout and wxbx1, who have this version that was needed for compiling RF i suppose.

Posted: Sat Feb 03, 2007 1:33 am
by HelloWorld
That is good news. :D

I started having a look at it, yesterday, in see what need to be done to convert it from v6.0 to Express Edition. but it already done! I just join the queue of others who are waiting! :wink:

Jonathan

ps. I am a software engineer with over 20 years of experience (mainly in C/C++).