MS VS Express 2008

– it does not contain MFC ( CWnd, CString etc. )
– you can’t call win32 api functions from Windows API ( SYSTEMTIME, GetSystemTime )

For win32 api possibilities install PlatformSDK 2003Server –
http://blogs.msdn.com/windowssdk/archive/2008/02/07/windows-sdk-rtms.aspx

http://blogs.msdn.com/windowssdk/archive/2008/02/22/using-visual-c-2008-express-with-the-windows-sdk-detailed-version.aspx

After Platform SDK installation run "Windows SDK Configuration Tool" from start-menu and select SDK version 6.1, so from now on VS will use this SDK.
Recompile.

2009-03-23 22:03:55
– in VS 2008 Express there is used  "_vsnprintf", so in Tery it makes conflicts. "_vsnprintf" has to be defined only for VS8.

    #if ( _MSC_VER >= 1400 )
        #define snprintf _snprintf
    #endif
    // only required for Visual Studio 8
    #if ( _MSC_VER == 1400 )
        #define vsnprintf _vsnprintf
    #endif

– when including windows.h I have to be sure to use #define WIN32_LEAN_AND_MEAN so that some includes are not processed. They generate "#define PlaySound PlaySoundA" and that conflicts with my code.