diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..23d7021
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,9 @@
+*.o
+*.a
+*.user
+*.suo
+*.sdf
+*.opensdf
+Release
+Debug
+ipch
\ No newline at end of file
diff --git a/TestUnitTest++.vsnet2010.vcxproj b/TestUnitTest++.vsnet2010.vcxproj
new file mode 100644
index 0000000..0bc8ac1
--- /dev/null
+++ b/TestUnitTest++.vsnet2010.vcxproj
@@ -0,0 +1,123 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {9CCC3439-309E-4E85-B3B8-CE704D385D48}
+ TestUnitTestvsnet2005
+ Win32Proj
+ TestUnitTest++.vsnet2010
+
+
+
+ Application
+ Unicode
+ false
+
+
+ Application
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ $(SolutionDir)$(Configuration)\
+ obj\$(ProjectName)\$(Configuration)\
+ true
+ $(SolutionDir)$(Configuration)\
+ obj\$(ProjectName)\$(Configuration)\
+ false
+
+
+
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)
+ true
+ Async
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+
+ Level4
+ EditAndContinue
+
+
+ true
+ Console
+ MachineX86
+
+
+ "$(TargetPath)"
+
+
+
+
+ MaxSpeed
+ WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)
+ Async
+ MultiThreadedDLL
+
+
+ Level4
+ ProgramDatabase
+
+
+ true
+ Console
+ true
+ true
+ MachineX86
+
+
+ "$(TargetPath)"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {64a4fefe-0461-4e95-8cc1-91ef5f57dbc6}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/TestUnitTest++.vsnet2010.vcxproj.filters b/TestUnitTest++.vsnet2010.vcxproj.filters
new file mode 100644
index 0000000..450d1fb
--- /dev/null
+++ b/TestUnitTest++.vsnet2010.vcxproj.filters
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/UnitTest++.vsnet2010.sln b/UnitTest++.vsnet2010.sln
new file mode 100644
index 0000000..47268f1
--- /dev/null
+++ b/UnitTest++.vsnet2010.sln
@@ -0,0 +1,26 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnitTest++.vsnet2010", "UnitTest++.vsnet2010.vcxproj", "{64A4FEFE-0461-4E95-8CC1-91EF5F57DBC6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestUnitTest++.vsnet2010", "TestUnitTest++.vsnet2010.vcxproj", "{9CCC3439-309E-4E85-B3B8-CE704D385D48}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {64A4FEFE-0461-4E95-8CC1-91EF5F57DBC6}.Debug|Win32.ActiveCfg = Debug|Win32
+ {64A4FEFE-0461-4E95-8CC1-91EF5F57DBC6}.Debug|Win32.Build.0 = Debug|Win32
+ {64A4FEFE-0461-4E95-8CC1-91EF5F57DBC6}.Release|Win32.ActiveCfg = Release|Win32
+ {64A4FEFE-0461-4E95-8CC1-91EF5F57DBC6}.Release|Win32.Build.0 = Release|Win32
+ {9CCC3439-309E-4E85-B3B8-CE704D385D48}.Debug|Win32.ActiveCfg = Debug|Win32
+ {9CCC3439-309E-4E85-B3B8-CE704D385D48}.Debug|Win32.Build.0 = Debug|Win32
+ {9CCC3439-309E-4E85-B3B8-CE704D385D48}.Release|Win32.ActiveCfg = Release|Win32
+ {9CCC3439-309E-4E85-B3B8-CE704D385D48}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/UnitTest++.vsnet2010.vcxproj b/UnitTest++.vsnet2010.vcxproj
new file mode 100644
index 0000000..9e0816b
--- /dev/null
+++ b/UnitTest++.vsnet2010.vcxproj
@@ -0,0 +1,118 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {64A4FEFE-0461-4E95-8CC1-91EF5F57DBC6}
+ UnitTestvsnet2005
+ Win32Proj
+ UnitTest++.vsnet2010
+
+
+
+ StaticLibrary
+ Unicode
+ false
+
+
+ StaticLibrary
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ $(SolutionDir)$(Configuration)\
+ obj\$(ProjectName)\$(Configuration)\
+ $(SolutionDir)$(Configuration)\
+ obj\$(ProjectName)\$(Configuration)\
+
+
+
+ Disabled
+ WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)
+ true
+ Async
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+
+ Level4
+ EditAndContinue
+
+
+
+
+ MinSpace
+ WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)
+ Async
+ MultiThreadedDLL
+
+
+ Level4
+ ProgramDatabase
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/UnitTest++.vsnet2010.vcxproj.filters b/UnitTest++.vsnet2010.vcxproj.filters
new file mode 100644
index 0000000..eea216f
--- /dev/null
+++ b/UnitTest++.vsnet2010.vcxproj.filters
@@ -0,0 +1,55 @@
+
+
+
+
+ {574dd04f-2b0e-463b-adf4-d019dba5403f}
+
+
+
+
+ Win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/MemoryOutStream.cpp b/src/MemoryOutStream.cpp
index 8b97132..3c112b6 100644
--- a/src/MemoryOutStream.cpp
+++ b/src/MemoryOutStream.cpp
@@ -23,6 +23,10 @@ void MemoryOutStream::Clear()
#include
#include
+#if _MSC_VER
+#define snprintf _snprintf
+#endif
+
namespace UnitTest {
namespace {