prevent launching in console subsystem when building with MinGW
Makefile tweak
Fix shared memory configuration in MinGW build
Suppress warnings for MSVC build
Suppress some compiler warnings
Add an error handling
Destroy GDI object
Add .gitignore