Home > Simple2D > Installing Simple2D and Compiling your first application

Installing Simple2D and Compiling your first application


Simple2D is my graphics library for students and beginners looking to experiment with drawing 2D graphics in C++ in the simplest possible way. It is based on the Direct2D API but removes almost all of the complexity. This article contains instructions on installing the software and all of the extras it requires, and shows how to compile your first program using Simple2D.

System Requirements

Simple2D is based on Microsoft Direct2D therefore you require one of the operating systems listed below. Windows XP is not supported! Make sure your operating system meets these requirements before continuing.

Simple2D 1.06 and later:

  • Windows 7 Service Pack 1 with Platform Update for Windows 7
  • Windows Server 2008 R2 Service Pack 1 with Platform Update for Windows 7
  • Windows 8
  • Windows Vista is NOT supported

Simple2D 1.05 and earlier (no longer supported):

  • Windows Vista Service Pack 2 with Platform Update
  • Windows 7
  • Windows Server 2008 R2
  • Windows 8

Installation

Visual Studio

Visual Studio is required to compile Simple2D applications. The library is tested against the following versions:

  • Visual Studio 2010 (compile with warnings)
  • Visual Studio 2012 (no warnings)
  • Visual Studio 2013 (no warnings)

If you don’t already have Visual Studio installed, download your preferred version for free:

It is strongly recommended that you use Visual Studio 2012 or 2013 where possible as the configuration is much simpler.

Windows 8 SDK (does not require Windows 8 to install or use)

Visual Studio 2010 users: Download and install the Windows 8 SDK so that Direct2D libraries are available in Visual Studio. See the section “Setting up Visual Studio 2010” in my Direct2D 1.1 Migration Guide for configuring the SDK paths correctly in your Visual Studio projects.

Visual Studio 2012 / 2013 users: When you perform the installation, ensure that you have chosen to install the Windows 8 SDK so that Direct2D libraries are available in Visual Studio. No changes to include or library paths on a per-project basis are needed.

Boost

Simple2D makes use of a common set of libraries called Boost to simplify many tasks. Simple2D has been tested against:

  • Boost 1.47
  • Boost 1.53
  • Boost 1.55

First download the Boost sources and headers and unpack them into a folder such as C:\Program Files (x86)\boost.

Then download the pre-compiled binaries for Windows. Use the 32-bit versions even if you are running a 64-bit system, as Simple2D is designed for a 32-bit build. The EXE will create a folder of libraries. Move them to C:\Program Files (x86)\boost\boost_x_yy_z\lib32 where boost_x_yy_z is the version-named Boost folder you copied in the previous step.

The DirectX SDK is not required

The DirectX SDK is not required to use Simple2D, so you don’t need to download this.

Simple2D

Finally, download Simple2D itself from this web site and run the installer. This will install the libraries and header files you need to get working with Simple2D. If your system requires Platform Update for Windows 7, the installer will download and install it for you automatically.

Advertisements

Pages: 1 2 3

  1. Kaden
    May 7, 2013 at 17:18

    Hello, I’ve followed all of the directions specified and now when I run the program I get a syntax error stemming from simple2dlib.h referring to objToClone. The exact piece of code is

    ObjectManager(ObjectManager const &o)
    {
    for (auto &objToClone : o.objects)
    {
    auto cloned = objToClone.clone();
    cloned->SetDeleteBehaviour(SODB_Destroy);

    objects.push_back(cloned);
    }
    }
    It says that objToClone reference has not been initialized. How do I go about initializing this?

    • May 9, 2013 at 01:07

      Hi Kaden and sorry for the slow reply. That sounds like a bug in the library. Which version are you using, and can you post the entire source code so I can take a look? The example code from the article is a simplified version of the ‘MSDN-Direct2D’ example in the examples folder of the installation. All of the examples are re-compiled and tested before each new version is released so it should work, so let’s have a look at your code. Thanks!

      • Kaden
        May 9, 2013 at 01:24

        I am using the Simple2D 1.10 and I am running the code from your 2D Platform Games Collision detection. Even when I try the test code from the above article, I get the same syntax error. I haven’t made any alterations to the simple2dlib.h code. The error is on Line 2231 of simple2dlib.h . I am using Windows 7, and VS 2010. My source code is as follows for main

        #include “C:\Program Files (x86)\DJKaty.com\Simple2D\src\Simple2D.h”

        using namespace S2D;

        class MyProgram : public Simple2D
        {
        // API entry points
        bool SetupResources();
        void ReleaseResources();
        void DrawScene();
        void UpdateObjects();

        // The bitmap brush to use to draw the platforms
        ImageBrush tile;

        // The sprite to use for the player
        Image player;

        // The number of objects in the game world
        int worldObjectCount;

        // The geometry of all the landscape objects (platforms and walls)
        Geometry *worldObjects;

        public:
        MyProgram()
        {
        // Load graphics
        tile = MakeBrush(MakeImage(L”tile.png”), Custom, D2D1_EXTEND_MODE_WRAP);
        player = MakeImage(L”stickman.png”);
        }

        };

        // Geometry matrix transformations are render-target dependent as they rely on the window/screen size
        // so the layout of the platforms in the game must be defined here
        bool MyProgram::SetupResources()
        {
        typedef enum { Rectangle, Ellipse } ShapeType;

        // This structure allows us to quickly define the layout of each landscape object
        typedef struct {
        int width;
        int height;
        ShapeType shape;
        float scaleX;
        float scaleY;
        GeometryTransformPoint scalePoint;
        float skewAngleX;
        float skewAngleY;
        GeometryTransformPoint skewPoint;
        float rotAngle;
        GeometryTransformPoint rotPoint;
        int topLeftX;
        int topLeftY;
        } ObjectDefinition;

        worldObjectCount = 12;

        // Create the landscape definition
        ObjectDefinition objdef[] =
        {
        // Gently sloping straight surface
        { 80*6, 80*1, Rectangle, .5f, .5f, PointBottomLeft, 0.f, -10.f, PointBottomLeft, 0.f, PointBottomLeft, 80, ResolutionY – 200 },

        // Block to help climb up steep sloping wall
        { 80*1, 80*1, Rectangle, .5f, .5f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 0.f, PointBottomLeft, 250, ResolutionY – 60 },

        // Steep sloping wall
        { 80*8, 80*1, Rectangle, .6f, .6f, PointBottomLeft, 0.f, 0.f, PointBottomLeft, 75.f, PointTopLeft, 240, ResolutionY – 250 },

        // Edge walls
        { 80*32, 80*1, Rectangle, .25f, .25f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 0.f, PointBottomLeft, 0, ResolutionY – 20 },
        { 80*24, 80*1, Rectangle, .25f, .25f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 90.f, PointTopLeft, 20, 0 },
        { 80*24, 80*1, Rectangle, .25f, .25f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 90.f, PointTopLeft, ResolutionX, 0 },

        // Gently sloping curved surface
        { 150, 40, Ellipse, 1.f, 1.f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 0.f, PointTopLeft, 460, 380 },

        // Square blocks (‘stairs’)
        { 80*1, 80*1, Rectangle, .75f, .75f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 0.f, PointTopLeft, 20, ResolutionY – 80 },
        { 80*1, 80*1, Rectangle, .4f, .4f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 0.f, PointTopLeft, 20, ResolutionY – 110 },

        // Two sloping platforms on left-hand side to give access to a long fall through a thin platform
        { 80*5, 80*1, Rectangle, .25f, .25f, PointTopLeft, 0.f, 10.f, PointBottomLeft, 0.f, PointTopLeft, 20, 200 },
        { 80*20, 80*1, Rectangle, .25f, .25f, PointTopLeft, 0.f, -15.f, PointBottomLeft, 0.f, PointTopLeft, 100, 150 },

        // Very thin platform (to test fall-through)
        { 80*20, 80*1, Rectangle, .1f, .05f, PointTopLeft, 0.f, 0.f, PointBottomLeft, 0.f, PointTopLeft, 420, 250 }
        };

        // Generate the game world landscape geometry
        worldObjects = new Geometry[worldObjectCount];

        for (int o = 0; o < worldObjectCount; o++)
        {
        ObjectDefinition &obj = objdef[o];

        if (obj.shape == Rectangle)
        worldObjects[o] = MakeRectangleGeometry(obj.width, obj.height);

        if (obj.shape == Ellipse)
        worldObjects[o] = MakeEllipseGeometry(obj.width, obj.height);

        worldObjects[o].SetTransform(
        worldObjects[o].Scale(obj.scaleX, obj.scaleY, obj.scalePoint)
        * worldObjects[o].Skew(obj.skewAngleX, obj.skewAngleY, obj.skewPoint)
        * worldObjects[o].Rotate(obj.rotAngle, obj.rotPoint)
        * worldObjects[o].Move(obj.topLeftX, obj.topLeftY));

        worldObjects[o].SetAutoAdjustBrushTransform(true);
        }
        return true;
        }

        // Free up game world resources
        void MyProgram::ReleaseResources()
        {
        delete [] worldObjects;
        }

        // Per-frame game world update / physics
        void MyProgram::UpdateObjects()
        {
        }

        // Render the game world
        void MyProgram::DrawScene()
        {
        }

        // Application entry point
        void Simple2DStart()
        {
        MyProgram test;
        test.SetWindowName(L"2D Geometry Collision Demo");
        test.SetBackgroundColour(Colour::Black);
        test.SetResizableWindow(true);
        test.Run();
        }

        • May 9, 2013 at 03:40

          Ok, I copy pasted your code into a new project and linked it against Simple2D 1.10 and it worked correctly. I suspect the problem is you are using Visual Studio 2010 and the problem line in question uses a C++11 syntax which isn’t supported by Microsoft until Visual Studio 2012. This was my fault – that code should be in the Simple2D.cpp file instead of the header so that you don’t need Visual Studio 2012 to compile applications with Simple2D. I will fix it in the next version. In the meantime, you should be able to make it compile correctly by changing these two lines:

          for (auto &objToClone : o.objects)
          {
          auto cloned = objToClone.clone();

          to:

          for (auto it = o.objects.begin(); it != o.objects.end(); it++)
          {
          auto cloned = it->clone();

          in Simple2DLib.h. Let me know if that helps and thanks for the report!

  2. Kaden
    May 9, 2013 at 06:22

    That helped get rid of that syntax error. Thank you. Now I get an error that I’ve never come across before. fatal error C1900: Il mismatch between ‘P1’ version ‘20100826’ and ‘P2’ version ‘20081201’. I checked online and haven’t found many solutions except to reinstall my service pack. I did just that but it hasn’t fixed the problem. If you have any suggestions, I would really appreciate it. I feel like I’m so close to getting this to work.

    • May 9, 2013 at 17:33

      I’ve never heard of that problem before, but there are some pages eg. http://connect.microsoft.com/VisualStudio/feedback/details/633817/fatal-error-c1900 where it is suggested that a static library compiled with /GL (whole program optimization enabled) requires the compiler tools which consume it to be of the same version as those which created it. I wasn’t aware of this… in Simple2D, the debug version (Simple2Dd.lib) is compiled without /GL but the release version (Simple2D.lib) is compiled with /GL. I will turn this off for future releases – in the meantime, can you try linking against Simple2Dd.lib and building with ‘Debug’ as the selected configuration and see if the problem goes away?

      • August 29, 2013 at 14:17

        You get the same for example with VS2008 code vs VS2008SP1. The /GL will generate code at link time. Which means it has to compile, and if the code doesn’t match the exact compiler version, you’ll get these problems. Better avoid /GL for libraries in general.

        • August 29, 2013 at 15:51

          Yep, I just posted a new version of the library yesterday and I have removed /GL altogether. I’ll accept my own inexperience with publishing C++ libraries to blame there…

  3. hope
    April 14, 2014 at 22:16

    Hey Katy, great work! I followed your steps but it seems it doesn’t work for me. I’m using VS C++ 2010 Express and tried to run one of the collision demos but I get like 30 linker errors (LNK2019 unresolved external symbol). Do you happen to know what would be the problem?

    • April 15, 2014 at 13:20

      Can you post the linker output so I can take a look for you? 🙂

      • hope
        April 15, 2014 at 14:05
        1>------ Build started: Project: first, Configuration: Debug Win32 ------
        1>  
        1>  Starting pass 1
        1>  Processed /DEFAULTLIB:uuid.lib
        1>  Processed /DEFAULTLIB:msvcprtd
        1>  Processed /DEFAULTLIB:MSVCRTD
        1>  Processed /DEFAULTLIB:OLDNAMES
        1>  
        1>  Searching libraries
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\kernel32.lib:
        1>        Found __imp__GetTickCount@0
        1>          Referenced in main.obj
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __IMPORT_DESCRIPTOR_KERNEL32
        1>          Referenced in kernel32.lib(KERNEL32.dll)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __NULL_IMPORT_DESCRIPTOR
        1>          Referenced in kernel32.lib(KERNEL32.dll)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found KERNEL32_NULL_THUNK_DATA
        1>          Referenced in kernel32.lib(KERNEL32.dll)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\user32.lib:
        1>        Found __imp__GetAsyncKeyState@4
        1>          Referenced in main.obj
        1>          Loaded user32.lib(USER32.dll)
        1>        Found __IMPORT_DESCRIPTOR_USER32
        1>          Referenced in user32.lib(USER32.dll)
        1>          Loaded user32.lib(USER32.dll)
        1>        Found USER32_NULL_THUNK_DATA
        1>          Referenced in user32.lib(USER32.dll)
        1>          Loaded user32.lib(USER32.dll)
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\gdi32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\winspool.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\comdlg32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\advapi32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\shell32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\ole32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\oleaut32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\uuid.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\odbc32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\odbccp32.lib:
        1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\msvcprtd.lib:
        1>        Found "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(newaop_s.obj)
        1>        Found "__declspec(dllimport) public: __thiscall std::_Lockit::~_Lockit(void)" (__imp_??1_Lockit@std@@QAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: __thiscall std::_Lockit::_Lockit(int)" (__imp_??0_Lockit@std@@QAE@H@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) void __cdecl std::_Debug_message(wchar_t const *,wchar_t const *,unsigned int)" (__imp_?_Debug_message@std@@YAXPB_W0I@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: __thiscall std::_Container_base12::~_Container_base12(void)" (__imp_??1_Container_base12@std@@QAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: __thiscall std::_Container_base12::_Container_base12(void)" (__imp_??0_Container_base12@std@@QAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: void __thiscall std::_Container_base12::_Orphan_all(void)" (__imp_?_Orphan_all@_Container_base12@std@@QAEXXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: struct std::_Iterator_base12 * * __thiscall std::_Container_base12::_Getpfirst(void)const " (__imp_?_Getpfirst@_Container_base12@std@@QBEPAPAU_Iterator_base12@2@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) void __cdecl std::_Xout_of_range(char const *)" (__imp_?_Xout_of_range@std@@YAXPBD@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) void __cdecl std::_Xlength_error(char const *)" (__imp_?_Xlength_error@std@@YAXPBD@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: class std::basic_ostream<char,struct std::char_traits<char> > & __thiscall std::basic_ostream<char,struct std::char_traits<char> >::operator<<(int)" (__imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@H@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: class std::basic_ostream<char,struct std::char_traits<char> > & __thiscall std::basic_ostream<char,struct std::char_traits<char> >::operator<<(float)" (__imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@M@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: virtual __thiscall std::basic_ios<char,struct std::char_traits<char> >::~basic_ios<char,struct std::char_traits<char> >(void)" (__imp_??1?$basic_ios@DU?$char_traits@D@std@@@std@@UAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: virtual __thiscall std::basic_iostream<char,struct std::char_traits<char> >::~basic_iostream<char,struct std::char_traits<char> >(void)" (__imp_??1?$basic_iostream@DU?$char_traits@D@std@@@std@@UAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: __thiscall std::basic_iostream<char,struct std::char_traits<char> >::basic_iostream<char,struct std::char_traits<char> >(class std::basic_streambuf<char,struct std::char_traits<char> > *)" (__imp_??0?$basic_iostream@DU?$char_traits@D@std@@@std@@QAE@PAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: __thiscall std::basic_ios<char,struct std::char_traits<char> >::basic_ios<char,struct std::char_traits<char> >(void)" (__imp_??0?$basic_ios@DU?$char_traits@D@std@@@std@@IAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) public: virtual __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::~basic_streambuf<char,struct std::char_traits<char> >(void)" (__imp_??1?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "public: virtual void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::_Lock(void)" (?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAEXXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "public: virtual void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::_Unlock(void)" (?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAEXXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "protected: virtual __int64 __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::showmanyc(void)" (?showmanyc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAE_JXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "protected: virtual int __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::uflow(void)" (?uflow@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAEHXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "protected: virtual __int64 __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::xsgetn(char *,__int64)" (?xsgetn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAE_JPAD_J@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "protected: virtual __int64 __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::xsputn(char const *,__int64)" (?xsputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAE_JPBD_J@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "protected: virtual class std::basic_streambuf<char,struct std::char_traits<char> > * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::setbuf(char *,__int64)" (?setbuf@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAEPAV12@PAD_J@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "protected: virtual int __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::sync(void)" (?sync@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAEHXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "protected: virtual void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::imbue(class std::locale const &)" (?imbue@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAEXABVlocale@2@@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: char * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::gptr(void)const " (__imp_?gptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEPADXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::setg(char *,char *,char *)" (__imp_?setg@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEXPAD00@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::setp(char *,char *)" (__imp_?setp@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEXPAD0@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: char * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::eback(void)const " (__imp_?eback@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEPADXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: char * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::_Pninc(void)" (__imp_?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEPADXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::setp(char *,char *,char *)" (__imp_?setp@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEXPAD00@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: char * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::pbase(void)const " (__imp_?pbase@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEPADXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: char * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::epptr(void)const " (__imp_?epptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEPADXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: char * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::pptr(void)const " (__imp_?pptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEPADXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::gbump(int)" (__imp_?gbump@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEXH@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: char * __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::egptr(void)const " (__imp_?egptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IBEPADXZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::pbump(int)" (__imp_?pbump@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAEXH@Z)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) __int64 const std::_BADOFF" (__imp_?_BADOFF@std@@3_JB)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found "__declspec(dllimport) protected: __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::basic_streambuf<char,struct std::char_traits<char> >(void)" (__imp_??0?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found __IMPORT_DESCRIPTOR_MSVCP100D
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>        Found MSVCP100D_NULL_THUNK_DATA
        1>          Referenced in msvcprtd.lib(MSVCP100D.dll)
        1>          Loaded msvcprtd.lib(MSVCP100D.dll)
        1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\MSVCRTD.lib:
        1>        Found __RTC_CheckEsp
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(_stack_.obj)
        1>        Found __RTC_Shutdown
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(_init_.obj)
        1>        Found "void __cdecl operator delete[](void *)" (??_V@YAXPAX@Z)
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "void __stdcall `eh vector constructor iterator'(void *,unsigned int,int,void (__thiscall*)(void *),void (__thiscall*)(void *))" (??_L@YGXPAXIHP6EX0@Z1@Z)
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(ehvecctr.obj)
        1>        Found ___security_cookie
        1>          Referenced in main.obj
        1>          Referenced in MSVCRTD.lib(ehvecctr.obj)
        1>          Loaded MSVCRTD.lib(gs_cookie.obj)
        1>        Found ___CxxFrameHandler3
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __fltused
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(dllsupp.obj)
        1>        Found @__security_check_cookie@4
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(secchk.obj)
        1>        Found "const type_info::`vftable'" (??_7type_info@@6B@)
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(ti_inst.obj)
        1>        Found __purecall
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp__rand
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "void __cdecl operator delete(void *)" (??3@YAXPAX@Z)
        1>          Referenced in main.obj
        1>          Referenced in MSVCRTD.lib(ti_inst.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "void __stdcall `eh vector destructor iterator'(void *,unsigned int,int,void (__thiscall*)(void *))" (??_M@YGXPAXIHP6EX0@Z@Z)
        1>          Referenced in main.obj
        1>          Referenced in MSVCRTD.lib(ti_inst.obj)
        1>          Loaded MSVCRTD.lib(ehvecdtr.obj)
        1>        Found _memset
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __ftol2_sse
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(ftol2.obj)
        1>        Found _fabs
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found _sqrt
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __allmul
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(llmul.obj)
        1>        Found __imp___invalid_parameter
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp___CrtDbgReportW
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found _memcpy
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found _strlen
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp__memmove
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __CxxThrowException@8
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z)
        1>          Referenced in main.obj
        1>          Referenced in msvcprtd.lib(newaop_s.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "public: __thiscall std::exception::exception(class std::exception const &)" (??0exception@std@@QAE@ABV01@@Z)
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "__declspec(dllimport) public: __thiscall std::exception::exception(char const * const &)" (__imp_??0exception@std@@QAE@ABQBD@Z)
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "public: virtual char const * __thiscall std::exception::what(void)const " (?what@exception@std@@UBEPBDXZ)
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "__declspec(dllimport) public: virtual __thiscall std::exception::~exception(void)" (__imp_??1exception@std@@UAE@XZ)
        1>          Referenced in main.obj
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found _WinMainCRTStartup
        1>          Loaded MSVCRTD.lib(crtexew.obj)
        1>        Found "void __cdecl _RTC_Failure(void *,int)" (?_RTC_Failure@@YAXPAXH@Z)
        1>          Referenced in MSVCRTD.lib(_stack_.obj)
        1>          Loaded MSVCRTD.lib(_error_.obj)
        1>        Found __RTC_SetErrorFuncW
        1>          Referenced in MSVCRTD.lib(_init_.obj)
        1>          Loaded MSVCRTD.lib(_userapi_.obj)
        1>        Found __CRT_RTC_INITW
        1>          Referenced in MSVCRTD.lib(_init_.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __IMPORT_DESCRIPTOR_MSVCR100D
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __except_handler4
        1>          Referenced in MSVCRTD.lib(ehvecctr.obj)
        1>          Referenced in MSVCRTD.lib(ehvecdtr.obj)
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Loaded MSVCRTD.lib(chandler4gs.obj)
        1>        Found ___report_gsfailure
        1>          Referenced in MSVCRTD.lib(secchk.obj)
        1>          Loaded MSVCRTD.lib(gs_report.obj)
        1>        Found "public: virtual __thiscall type_info::~type_info(void)" (??1type_info@@UAE@XZ)
        1>          Referenced in MSVCRTD.lib(ti_inst.obj)
        1>          Loaded MSVCRTD.lib(typeinfo_dtor_32.obj)
        1>        Found "void __cdecl terminate(void)" (?terminate@@YAXXZ)
        1>          Referenced in MSVCRTD.lib(ehvecdtr.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found ___sse2_available
        1>          Referenced in MSVCRTD.lib(ftol2.obj)
        1>          Loaded MSVCRTD.lib(cpu_disp.obj)
        1>        Found ___CxxSetUnhandledExceptionFilter
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(unhandld.obj)
        1>        Found __imp___configthreadlocale
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found ___globallocalestatus
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(xthdloc.obj)
        1>        Found __setdefaultprecision
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(fp8.obj)
        1>        Found __imp____setusermatherr
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __matherr
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(merr.obj)
        1>        Found __setargv
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(dllargv.obj)
        1>        Found __RTC_Initialize
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(_initsect_.obj)
        1>        Found __commode
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(xncommod.obj)
        1>        Found __imp___commode
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __fmode
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(xtxtmode.obj)
        1>        Found __imp___fmode
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found ___onexitbegin
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(atonexit.obj)
        1>        Found __imp____set_app_type
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __amsg_exit
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp____getmainargs
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __dowildcard
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(wildcard.obj)
        1>        Found __newmode
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(_newmode.obj)
        1>        Found ___security_init_cookie
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(gs_support.obj)
        1>        Found __imp___exit
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __XcptFilter
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp___cexit
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp__exit
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp___ismbblead
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp___acmdln
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp___CrtSetCheckCount
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __IsNonwritableInCurrentImage
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(pesect.obj)
        1>        Found __initterm
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found ___xc_a
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(cinitexe.obj)
        1>  Processed /DEFAULTLIB:kernel32.lib
        1>   Processed /DISALLOWLIB:libcmt.lib
        1>   Processed /DISALLOWLIB:libcmtd.lib
        1>   Processed /DISALLOWLIB:msvcrt.lib
        1>        Found __initterm_e
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found ___native_startup_state
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded MSVCRTD.lib(natstart.obj)
        1>        Found "int __cdecl _RTC_GetSrcLine(unsigned char *,wchar_t *,unsigned long,int *,wchar_t *,unsigned long)" (?_RTC_GetSrcLine@@YAHPAEPA_WKPAH1K@Z)
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Loaded MSVCRTD.lib(_pdblkup_.obj)
        1>        Found MSVCR100D_NULL_THUNK_DATA
        1>          Referenced in MSVCRTD.lib(MSVCR100D.dll)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __except_handler4_common
        1>          Referenced in MSVCRTD.lib(chandler4gs.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __crt_debugger_hook
        1>          Referenced in MSVCRTD.lib(gs_report.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found "public: void __thiscall type_info::_type_info_dtor_internal_method(void)" (?_type_info_dtor_internal_method@type_info@@QAEXXZ)
        1>          Referenced in MSVCRTD.lib(typeinfo_dtor_32.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __controlfp_s
        1>          Referenced in MSVCRTD.lib(fp8.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __invoke_watson
        1>          Referenced in MSVCRTD.lib(fp8.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __unlock
        1>          Referenced in MSVCRTD.lib(atonexit.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found ___dllonexit
        1>          Referenced in MSVCRTD.lib(atonexit.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __lock
        1>          Referenced in MSVCRTD.lib(atonexit.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>        Found __imp___onexit
        1>          Referenced in MSVCRTD.lib(atonexit.obj)
        1>          Loaded MSVCRTD.lib(MSVCR100D.dll)
        1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\OLDNAMES.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\kernel32.lib:
        1>        Found __imp__EncodePointer@4
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Referenced in MSVCRTD.lib(atonexit.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__InterlockedExchange@8
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__Sleep@4
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__InterlockedCompareExchange@12
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__HeapSetInformation@16
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetStartupInfoW@4
        1>          Referenced in MSVCRTD.lib(crtexew.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__WideCharToMultiByte@32
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__IsDebuggerPresent@0
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Referenced in MSVCRTD.lib(gs_report.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__MultiByteToWideChar@24
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__RaiseException@16
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__lstrlenA@4
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetProcAddress@8
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__LoadLibraryW@4
        1>          Referenced in MSVCRTD.lib(_error_.obj)
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__TerminateProcess@8
        1>          Referenced in MSVCRTD.lib(gs_report.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetCurrentProcess@0
        1>          Referenced in MSVCRTD.lib(gs_report.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__UnhandledExceptionFilter@4
        1>          Referenced in MSVCRTD.lib(gs_report.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__SetUnhandledExceptionFilter@4
        1>          Referenced in MSVCRTD.lib(gs_report.obj)
        1>          Referenced in MSVCRTD.lib(unhandld.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__IsProcessorFeaturePresent@4
        1>          Referenced in MSVCRTD.lib(cpu_disp.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__DecodePointer@4
        1>          Referenced in MSVCRTD.lib(atonexit.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__QueryPerformanceCounter@4
        1>          Referenced in MSVCRTD.lib(gs_support.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetCurrentThreadId@0
        1>          Referenced in MSVCRTD.lib(gs_support.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetCurrentProcessId@0
        1>          Referenced in MSVCRTD.lib(gs_support.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetSystemTimeAsFileTime@4
        1>          Referenced in MSVCRTD.lib(gs_support.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__HeapFree@12
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__HeapAlloc@12
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetProcessHeap@0
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__GetModuleFileNameW@12
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__VirtualQuery@12
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>        Found __imp__FreeLibrary@4
        1>          Referenced in MSVCRTD.lib(_pdblkup_.obj)
        1>          Loaded kernel32.lib(KERNEL32.dll)
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\user32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\gdi32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\winspool.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\comdlg32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\advapi32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\shell32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\ole32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\oleaut32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\uuid.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\odbc32.lib:
        1>      Searching C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86\odbccp32.lib:
        1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\msvcprtd.lib:
        1>  
        1>  Finished searching libraries
        1>  
        1>  Finished pass 1
        1>  
        1>  Generating non-SAFESEH image.
        1>main.obj : error LNK2019: unresolved external symbol "public: struct D2D_RECT_F __thiscall S2D::Geometry::GetBounds(struct D2D_MATRIX_3X2_F &,float,struct ID2D1StrokeStyle *)" (?GetBounds@Geometry@S2D@@QAE?AUD2D_RECT_F@@AAUD2D_MATRIX_3X2_F@@MPAUID2D1StrokeStyle@@@Z) referenced in function "private: virtual bool __thiscall MyProgram::SetupResources(void)" (?SetupResources@MyProgram@@EAE_NXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: struct D2D_MATRIX_3X2_F __thiscall S2D::Geometry::Move(int,int)" (?Move@Geometry@S2D@@QAE?AUD2D_MATRIX_3X2_F@@HH@Z) referenced in function "private: virtual bool __thiscall MyProgram::SetupResources(void)" (?SetupResources@MyProgram@@EAE_NXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: struct D2D_MATRIX_3X2_F __thiscall S2D::Geometry::Rotate(float,enum S2D::GeometryTransformPoint)" (?Rotate@Geometry@S2D@@QAE?AUD2D_MATRIX_3X2_F@@MW4GeometryTransformPoint@2@@Z) referenced in function "private: virtual bool __thiscall MyProgram::SetupResources(void)" (?SetupResources@MyProgram@@EAE_NXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: struct D2D_MATRIX_3X2_F __thiscall S2D::Geometry::Scale(float,float,enum S2D::GeometryTransformPoint)" (?Scale@Geometry@S2D@@QAE?AUD2D_MATRIX_3X2_F@@MMW4GeometryTransformPoint@2@@Z) referenced in function "private: virtual bool __thiscall MyProgram::SetupResources(void)" (?SetupResources@MyProgram@@EAE_NXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: struct D2D_MATRIX_3X2_F __thiscall S2D::Geometry::Skew(float,float,enum S2D::GeometryTransformPoint)" (?Skew@Geometry@S2D@@QAE?AUD2D_MATRIX_3X2_F@@MMW4GeometryTransformPoint@2@@Z) referenced in function "private: virtual bool __thiscall MyProgram::SetupResources(void)" (?SetupResources@MyProgram@@EAE_NXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: class S2D::Geometry __thiscall S2D::Simple2D::MakeEllipseGeometry(int,int)" (?MakeEllipseGeometry@Simple2D@S2D@@QAE?AVGeometry@2@HH@Z) referenced in function "private: virtual bool __thiscall MyProgram::SetupResources(void)" (?SetupResources@MyProgram@@EAE_NXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: class S2D::Geometry __thiscall S2D::Simple2D::MakeRectangleGeometry(int,int)" (?MakeRectangleGeometry@Simple2D@S2D@@QAE?AVGeometry@2@HH@Z) referenced in function "private: virtual bool __thiscall MyProgram::SetupResources(void)" (?SetupResources@MyProgram@@EAE_NXZ)
        1>main.obj : error LNK2019: unresolved external symbol "protected: __thiscall S2D::RenderingObject::RenderingObject(void)" (??0RenderingObject@S2D@@IAE@XZ) referenced in function "protected: __thiscall S2D::RenderingObjectShareable::RenderingObjectShareable(void)" (??0RenderingObjectShareable@S2D@@IAE@XZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: bool __thiscall S2D::Simple2D::HasFocus(void)" (?HasFocus@Simple2D@S2D@@QAE_NXZ) referenced in function "private: virtual void __thiscall MyProgram::UpdateObjects(void)" (?UpdateObjects@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: bool __thiscall S2D::Geometry::ContainsPoint(int,int)" (?ContainsPoint@Geometry@S2D@@QAE_NHH@Z) referenced in function "private: virtual void __thiscall MyProgram::UpdateObjects(void)" (?UpdateObjects@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: class S2D::Geometry __thiscall S2D::Geometry::GetIntersectedGeometry(class S2D::Geometry &,struct D2D_MATRIX_3X2_F &)" (?GetIntersectedGeometry@Geometry@S2D@@QAE?AV12@AAV12@AAUD2D_MATRIX_3X2_F@@@Z) referenced in function "private: virtual void __thiscall MyProgram::UpdateObjects(void)" (?UpdateObjects@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: class S2D::Geometry __thiscall S2D::Simple2D::MakeRectangleGeometry(struct D2D_RECT_F)" (?MakeRectangleGeometry@Simple2D@S2D@@QAE?AVGeometry@2@UD2D_RECT_F@@@Z) referenced in function "private: virtual void __thiscall MyProgram::UpdateObjects(void)" (?UpdateObjects@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: float __thiscall S2D::Simple2D::LinearMovement(float)" (?LinearMovement@Simple2D@S2D@@QAEMM@Z) referenced in function "private: virtual void __thiscall MyProgram::UpdateObjects(void)" (?UpdateObjects@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::Simple2D::Text(int,int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class S2D::GenericBrush *,class boost::intrusive_ptr<struct IDWriteTextFormat>,int,int)" (?Text@Simple2D@S2D@@QAEXHHV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVGenericBrush@2@V?$intrusive_ptr@UIDWriteTextFormat@@@boost@@HH@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::Simple2D::SetTextFormat(class boost::intrusive_ptr<struct IDWriteTextFormat>)" (?SetTextFormat@Simple2D@S2D@@QAEXV?$intrusive_ptr@UIDWriteTextFormat@@@boost@@@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: class boost::intrusive_ptr<struct IDWriteTextFormat> __thiscall S2D::Simple2D::MakeTextFormat(wchar_t *,float,enum DWRITE_TEXT_ALIGNMENT,enum DWRITE_FONT_WEIGHT,enum DWRITE_FONT_STYLE,enum DWRITE_FONT_STRETCH)" (?MakeTextFormat@Simple2D@S2D@@QAE?AV?$intrusive_ptr@UIDWriteTextFormat@@@boost@@PA_WMW4DWRITE_TEXT_ALIGNMENT@@W4DWRITE_FONT_WEIGHT@@W4DWRITE_FONT_STYLE@@W4DWRITE_FONT_STRETCH@@@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::Simple2D::DrawRectangle(int,int,int,int,class S2D::GenericBrush *)" (?DrawRectangle@Simple2D@S2D@@QAEXHHHHPAVGenericBrush@2@@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::Simple2D::SetBrush(enum D2D1::ColorF::Enum)" (?SetBrush@Simple2D@S2D@@QAEXW4Enum@ColorF@D2D1@@@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::ImageObject::Draw(int,int,float,float)" (?Draw@ImageObject@S2D@@QAEXHHMM@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::Geometry::Fill(struct D2D_MATRIX_3X2_F &,enum S2D::GeometryDrawStart,class S2D::GenericBrush *,struct ID2D1Brush *)" (?Fill@Geometry@S2D@@QAEXAAUD2D_MATRIX_3X2_F@@W4GeometryDrawStart@2@PAVGenericBrush@2@PAUID2D1Brush@@@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::Simple2D::SetBrush(class S2D::GenericBrush *)" (?SetBrush@Simple2D@S2D@@QAEXPAVGenericBrush@2@@Z) referenced in function "private: virtual void __thiscall MyProgram::DrawScene(void)" (?DrawScene@MyProgram@@EAEXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: void __thiscall S2D::Simple2D::Run(void)" (?Run@Simple2D@S2D@@QAEXXZ) referenced in function "void __cdecl Simple2DStart(void)" (?Simple2DStart@@YAXXZ)
        1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall S2D::Simple2D::~Simple2D(void)" (??1Simple2D@S2D@@QAE@XZ) referenced in function __unwindfunclet$??0MyProgram@@QAE@USimple2DStartupInfo@S2D@@@Z$0
        1>main.obj : error LNK2019: unresolved external symbol "public: class S2D::Geometry __thiscall S2D::Simple2D::MakeLineGeometry(struct D2D_POINT_2F *,int,enum S2D::Geometry::PathType,enum S2D::Geometry::FillType,enum S2D::GeometryDrawStart,enum S2D::Geometry::FigureFillType)" (?MakeLineGeometry@Simple2D@S2D@@QAE?AVGeometry@2@PAUD2D_POINT_2F@@HW4PathType@32@W4FillType@32@W4GeometryDrawStart@2@W4FigureFillType@32@@Z) referenced in function "public: __thiscall MyProgram::MyProgram(struct S2D::Simple2DStartupInfo)" (??0MyProgram@@QAE@USimple2DStartupInfo@S2D@@@Z)
        1>main.obj : error LNK2019: unresolved external symbol "public: class S2D::ImageBrushObject * __thiscall S2D::Simple2D::MakeBrush(class S2D::ImageObject *,enum S2D::AlignmentType,enum D2D1_EXTEND_MODE,enum D2D1_EXTEND_MODE,bool)" (?MakeBrush@Simple2D@S2D@@QAEPAVImageBrushObject@2@PAVImageObject@2@W4AlignmentType@2@W4D2D1_EXTEND_MODE@@2_N@Z) referenced in function "public: __thiscall MyProgram::MyProgram(struct S2D::Simple2DStartupInfo)" (??0MyProgram@@QAE@USimple2DStartupInfo@S2D@@@Z)
        1>main.obj : error LNK2019: unresolved external symbol "public: class S2D::ImageObject * __thiscall S2D::Simple2D::MakeImage(wchar_t const *,bool)" (?MakeImage@Simple2D@S2D@@QAEPAVImageObject@2@PB_W_N@Z) referenced in function "public: __thiscall MyProgram::MyProgram(struct S2D::Simple2DStartupInfo)" (??0MyProgram@@QAE@USimple2DStartupInfo@S2D@@@Z)
        1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall S2D::Simple2D::Simple2D(struct S2D::Simple2DStartupInfo)" (??0Simple2D@S2D@@QAE@USimple2DStartupInfo@1@@Z) referenced in function "public: __thiscall MyProgram::MyProgram(struct S2D::Simple2DStartupInfo)" (??0MyProgram@@QAE@USimple2DStartupInfo@S2D@@@Z)
        1>main.obj : error LNK2019: unresolved external symbol "void __cdecl intrusive_ptr_release(struct IUnknown *)" (?intrusive_ptr_release@@YAXPAUIUnknown@@@Z) referenced in function "public: __thiscall boost::intrusive_ptr<struct ID2D1Resource>::~intrusive_ptr<struct ID2D1Resource>(void)" (??1?$intrusive_ptr@UID2D1Resource@@@boost@@QAE@XZ)
        1>main.obj : error LNK2019: unresolved external symbol "void __cdecl intrusive_ptr_add_ref(struct IUnknown *)" (?intrusive_ptr_add_ref@@YAXPAUIUnknown@@@Z) referenced in function "public: __thiscall boost::intrusive_ptr<struct ID2D1Resource>::intrusive_ptr<struct ID2D1Resource>(class boost::intrusive_ptr<struct ID2D1Resource> const &)" (??0?$intrusive_ptr@UID2D1Resource@@@boost@@QAE@ABV01@@Z)
        1>C:\Users\Popescu\documents\visual studio 2010\Projects\first\Debug\first.exe : fatal error LNK1120: 29 unresolved externals
        ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
        
        • April 15, 2014 at 22:48

          Ah right if you’re using 1.13 I need to update the installation instructions. You no longer need to add Simple2Dd.lib and Simple2D.lib as debug and release linker inputs – you can instead go to the global settings (properties manager) and add c:\program files (x86)\djkaty.com\simple2d\lib\vc11\$(Configuration) and it will automatically link to the correct library for both debug and release. Note though that the vc11 folder is compiled against Visual Studio 2012 (and vc12 for Visual Studio 2013) so you may get a version mismatch error (1600 vs 1700 or some such) – if so you need to recompile Simple2D itself and I’m not sure if you can under VS2010 anymore because it uses some C++11 stuff, but you can try. I recommend you upgrade to Visual C++ 2012 Express or Visual Studio for Windows Desktop Express 2013 if you are able to. If you need to recompile Simple2D for VS2010 and you get errors, post them and I’ll come up with some compatibility fixes.

  4. hope
    April 16, 2014 at 18:47

    I got VS Express 2012 but I still didn’t make it work. Downloaded boost 1.53 and simple2D 1.13. Unfortunately, I still get the 30 linker errors.

    • April 18, 2014 at 21:34

      If it’s the same errors it is because it can’t find Simple2D.lib; did you change the linker input in property manager as I suggested above?

      • April 18, 2014 at 21:36

        Sorry, I meant adding the above mentioned folder to Library Directories in VC++ Directories in Property Manager.

  5. hope
    April 27, 2014 at 19:57

    Yes, I added C:\Program Files (x86)\DJKaty.com\Simple2D\lib\vc11\$(Configuration) to Library Directories in VC++ Directories but I still get the errors. They are the same errors. Maybe I’m forgetting something, but I can’t find what.

    • May 23, 2014 at 18:15

      I have just updated the article with new installation instructions for Simple2D 1.13 on various versions of Visual Studio. Can you please try again and let me know how it goes? Sorry for taking so long to reply, been sick.

  6. Emílio Dallastella
    March 2, 2015 at 01:45

    Hi, I tried to install this today, but i don’t know how to include the library on the Visual Studio 2013, and was wondering if you could help me out? I downloaded your Tetris source code and tried to run it, and it appeared that I couldn’t open the #include . Thanks!

  1. September 22, 2012 at 21:17
  2. January 16, 2013 at 18:32
  3. January 16, 2013 at 20:37
  4. January 18, 2013 at 21:24
  5. January 21, 2013 at 04:12
  6. January 28, 2013 at 23:43
  7. February 18, 2013 at 22:06
  8. February 19, 2013 at 00:12
  9. February 24, 2013 at 02:53
  10. March 14, 2013 at 16:56
  11. August 29, 2013 at 05:50
  12. September 27, 2013 at 03:36
  13. November 9, 2013 at 10:44
  14. November 24, 2013 at 15:19
  15. March 28, 2014 at 13:11
  16. November 8, 2014 at 17:19

Share your thoughts! Note: to post source code, enclose it in [code lang=...] [/code] tags. Valid values for 'lang' are cpp, csharp, xml, javascript, php etc. To post compiler errors or other text that is best read monospaced, use 'text' as the value for lang.

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: