diff --git a/samples/Projects/Win32/VC7/PSVIWriter/PSVIWriter.vcproj b/samples/Projects/Win32/VC7/PSVIWriter/PSVIWriter.vcproj
new file mode 100644
index 0000000000000000000000000000000000000000..4bb174d7ec42dd0bd608de5e71d30e4654f7fc09
--- /dev/null
+++ b/samples/Projects/Win32/VC7/PSVIWriter/PSVIWriter.vcproj
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding = "Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="7.00"
+	Name="PSVIWriter"
+	ProjectGUID="{5769C5DE-11C2-47C4-ACC5-47C9000B6714}"
+	SccProjectName=""
+	SccLocalPath="">
+	<Platforms>
+		<Platform
+			Name="Win32"/>
+	</Platforms>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory=".\..\..\..\..\..\bin"
+			IntermediateDirectory=".\..\..\..\..\..\bin\obj"
+			ConfigurationType="1"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="FALSE">
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				ImproveFloatingPointConsistency="TRUE"
+				OptimizeForProcessor="1"
+				AdditionalIncludeDirectories="..\..\..\..\..\include"
+				PreprocessorDefinitions="PROJ_PSVIWriter,_DEBUG,WIN32,_CONSOLE,PLATFORM_WIN32"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="3"
+				DisableLanguageExtensions="TRUE"
+				PrecompiledHeaderFile=".\..\..\..\..\..\bin\obj/PSVIWriter.pch"
+				AssemblerListingLocation=".\..\..\..\..\..\bin\obj/"
+				ObjectFile=".\..\..\..\..\..\bin\obj/"
+				ProgramDataBaseFileName=".\..\..\..\..\..\bin\obj/"
+				WarningLevel="3"
+				SuppressStartupBanner="TRUE"
+				DebugInformationFormat="3"
+				CompileAs="0"/>
+			<Tool
+				Name="VCCustomBuildTool"/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalOptions="/MACHINE:I386"
+				AdditionalDependencies="xerces-c_2D.lib"
+				OutputFile=".\..\..\..\..\..\bin/PSVIWriter.exe"
+				Version="1.0"
+				LinkIncremental="2"
+				SuppressStartupBanner="TRUE"
+				AdditionalLibraryDirectories="..\..\..\..\..\lib"
+				GenerateDebugInformation="TRUE"
+				ProgramDatabaseFile=".\..\..\..\..\..\bin/PSVIWriter.pdb"
+				SubSystem="1"/>
+			<Tool
+				Name="VCMIDLTool"
+				TypeLibraryName=".\..\..\..\..\..\bin/PSVIWriter.tlb"/>
+			<Tool
+				Name="VCPostBuildEventTool"/>
+			<Tool
+				Name="VCPreBuildEventTool"/>
+			<Tool
+				Name="VCPreLinkEventTool"/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="_DEBUG"
+				Culture="1033"/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"/>
+			<Tool
+				Name="VCWebDeploymentTool"/>
+		</Configuration>
+	</Configurations>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
+			<File
+				RelativePath="..\..\..\..\PSVIWriter\PSVIUni.cpp">
+			</File>
+			<File
+				RelativePath="..\..\..\..\PSVIWriter\PSVIWriter.cpp">
+			</File>
+			<File
+				RelativePath="..\..\..\..\PSVIWriter\PSVIWriterHandlers.cpp">
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl">
+			<File
+				RelativePath="..\..\..\..\PSVIWriter\PSVIUni.hpp">
+			</File>
+			<File
+				RelativePath="..\..\..\..\PSVIWriter\PSVIWriter.hpp">
+			</File>
+			<File
+				RelativePath="..\..\..\..\PSVIWriter\PSVIWriterHandlers.hpp">
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
+		</Filter>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>
diff --git a/samples/Projects/Win32/VC7/samples.sln b/samples/Projects/Win32/VC7/samples.sln
index e05251d5494800cf97cc50ce2a69851bf0baf2ae..cdf785663d1f9517310b87cdd2856b8e25a689d0 100644
--- a/samples/Projects/Win32/VC7/samples.sln
+++ b/samples/Projects/Win32/VC7/samples.sln
@@ -25,6 +25,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SEnumVal", "SEnumVal\SEnumV
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StdInParse", "StdInParse\StdInParse.vcproj", "{A0B8FC42-0429-48C1-9C65-939E0DC9D991}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PSVIWriter", "PSVIWriter\PSVIWriter.vcproj", "{5769C5DE-11C2-47C4-ACC5-47C9000B6714}"
+EndProject
 Global
 	GlobalSection(SolutionConfiguration) = preSolution
 		ConfigName.0 = Debug
@@ -58,6 +60,8 @@ Global
 		{9D4CA05C-E16F-4CC7-8894-2F8B4EDF8889}.Debug.Build.0 = Debug|Win32
 		{A0B8FC42-0429-48C1-9C65-939E0DC9D991}.Debug.ActiveCfg = Debug|Win32
 		{A0B8FC42-0429-48C1-9C65-939E0DC9D991}.Debug.Build.0 = Debug|Win32
+		{5769C5DE-11C2-47C4-ACC5-47C9000B6714}.Debug.ActiveCfg = Debug|Win32
+		{5769C5DE-11C2-47C4-ACC5-47C9000B6714}.Debug.Build.0 = Debug|Win32
 	EndGlobalSection
 	GlobalSection(ExtensibilityGlobals) = postSolution
 	EndGlobalSection