You could make a log file or call WinAPI message box dialog thats in the API if you want... but I think you want to be in windowed mode - it might wreak havoc in full screen mode.
I have a DarkGDK OOP library
http://code.google.com/p/darkgdkoop/ that has a logging system built into it.... it has a gui too... but I haven't made microsoft'ish dialog boxes yet...
To integrate to your project...
1: Download the current release
2: Unzip
3: you would "include existing" files to your project - all the j*.cpp and j*.h files in the
GamesClasses folder, and all the j*.cpp and j*.cpp files in the
FoundationClasses folder. I recommend placing these in a new "filter" so they are not listed alongside your project - easier ro remove them from your project this way. (New filter is when you right click project from inside tree view, you'll see the option)
4: In your project properties area, you would tell it the directories of the
GameClasses folder and the
FoundationClasses folder. Look at a demo project's properties in Jegas, LLC Game Classes solution to see what I mean.
Then in your program.... add the following includes
#include "jfc_common.h"
#include "jgc_configuration.h"
#include "jgc_common.h"
The library does alot of display init... so if you don't wish to adopt this code, just call my init first, then yours, for just a file log, it shouldn't matter. Here's a sample program I just tossed together to show you how to get the log file going as quick as possible using this system of mine... (Could just roll your own of course)
#include <DarkGDK.h>
#include "jfc_common.h"
#include "jgc_configuration.h"
#include "jgc_common.h"
void DarkGDK(void){
JGC::Daddy = new JGC_DADDY();
// Here you can tweak some default values before the engine starts
// any Value here: JGC::Daddy->D_?????????
JGC::Daddy->D_Camera_AutoCam=false;
// Then you say... Ok START!
JGC::Daddy->Init();
// now all the classes in the JGC NameSpace are Alive and Instantiated
// a couple default images are created in memory, and a couple objects
// Default Bitmap fonts are loaded (Arial, Arial Bold)
//Now I know I created some objects (three actually) Called Toy, Angle Finder, and
// anchor. Two are excluded, anchor remains visible... so .. let's hide.
JGC::ObjAnchor->Exclude_Set(true);
JGC::File->Log(1,"SomeLogCode","Some Message! :)");
while(LoopGDK()){
// your normal stuff here...
JGC::Daddy->Update(); // Not needed just to use log file. but does dbSync too
};
delete JGC::Daddy;
};
[edit] sorry JinZai - I was posting same time as you.. just took me awhile.. I was in my vs2008 writing the little demo...[/edit]