[Python-checkins] bpo-41089: Filters and other issues in Visual Studio projects (GH-21070)

Nikita Nemkin webhook-mailer at python.org
Tue Jun 23 14:41:58 EDT 2020


https://github.com/python/cpython/commit/fe2a48c605d98ac02ab2b9593cb87ce364aeae2d
commit: fe2a48c605d98ac02ab2b9593cb87ce364aeae2d
branch: master
author: Nikita Nemkin <nikita at nemkin.ru>
committer: GitHub <noreply at github.com>
date: 2020-06-23T19:41:49+01:00
summary:

bpo-41089: Filters and other issues in Visual Studio projects (GH-21070)

* Add missing header files to pythoncore.
* Add missing file filters ("Resource Files" in particular) to
  all projects.
* Add new sub-filters for private headers in pythoncore and
  for 3rd party source files.
* Add missing _zoneinfo configurations in pcbuild.sln.
* Update bdist_wininst with the new zlib location.

files:
A PCbuild/liblzma.vcxproj.filters
A PCbuild/python_uwp.vcxproj.filters
A PCbuild/pythonw_uwp.vcxproj.filters
A PCbuild/venvlauncher.vcxproj.filters
A PCbuild/venvwlauncher.vcxproj.filters
M PC/bdist_wininst/bdist_wininst.vcxproj
M PC/bdist_wininst/bdist_wininst.vcxproj.filters
M PCbuild/_asyncio.vcxproj.filters
M PCbuild/_bz2.vcxproj.filters
M PCbuild/_ctypes.vcxproj.filters
M PCbuild/_ctypes_test.vcxproj.filters
M PCbuild/_decimal.vcxproj.filters
M PCbuild/_elementtree.vcxproj.filters
M PCbuild/_freeze_importlib.vcxproj.filters
M PCbuild/_hashlib.vcxproj.filters
M PCbuild/_lzma.vcxproj.filters
M PCbuild/_msi.vcxproj.filters
M PCbuild/_multiprocessing.vcxproj.filters
M PCbuild/_overlapped.vcxproj.filters
M PCbuild/_queue.vcxproj.filters
M PCbuild/_socket.vcxproj.filters
M PCbuild/_sqlite3.vcxproj.filters
M PCbuild/_ssl.vcxproj.filters
M PCbuild/_testbuffer.vcxproj.filters
M PCbuild/_testcapi.vcxproj.filters
M PCbuild/_testconsole.vcxproj.filters
M PCbuild/_testembed.vcxproj.filters
M PCbuild/_testimportmultiple.vcxproj.filters
M PCbuild/_testinternalcapi.vcxproj.filters
M PCbuild/_testmultiphase.vcxproj.filters
M PCbuild/_tkinter.vcxproj.filters
M PCbuild/_uuid.vcxproj.filters
M PCbuild/_zoneinfo.vcxproj.filters
M PCbuild/pcbuild.sln
M PCbuild/pyexpat.vcxproj.filters
M PCbuild/pylauncher.vcxproj.filters
M PCbuild/pyshellext.vcxproj.filters
M PCbuild/python3dll.vcxproj.filters
M PCbuild/pythoncore.vcxproj
M PCbuild/pythoncore.vcxproj.filters
M PCbuild/pythonw.vcxproj.filters
M PCbuild/pywlauncher.vcxproj.filters
M PCbuild/select.vcxproj.filters
M PCbuild/sqlite3.vcxproj.filters
M PCbuild/unicodedata.vcxproj.filters
M PCbuild/winsound.vcxproj.filters

diff --git a/PC/bdist_wininst/bdist_wininst.vcxproj b/PC/bdist_wininst/bdist_wininst.vcxproj
index d2f1bb75e30d8..390bf4e62728c 100644
--- a/PC/bdist_wininst/bdist_wininst.vcxproj
+++ b/PC/bdist_wininst/bdist_wininst.vcxproj
@@ -87,7 +87,7 @@
     </Midl>
     <ClCompile>
       <Optimization>MinSpace</Optimization>
-      <AdditionalIncludeDirectories>$(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <AdditionalIncludeDirectories>$(zlibDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <RuntimeLibrary Condition="'$(Configuration)'=='Debug'">MultiThreadedDebug</RuntimeLibrary>
       <RuntimeLibrary Condition="'$(Configuration)'=='Release'">MultiThreaded</RuntimeLibrary>
@@ -102,15 +102,16 @@
   <ItemGroup>
     <ClCompile Include="extract.c" />
     <ClCompile Include="install.c" />
-    <ClCompile Include="..\..\Modules\zlib\adler32.c" />
-    <ClCompile Include="..\..\Modules\zlib\crc32.c" />
-    <ClCompile Include="..\..\Modules\zlib\inffast.c" />
-    <ClCompile Include="..\..\Modules\zlib\inflate.c" />
-    <ClCompile Include="..\..\Modules\zlib\inftrees.c" />
-    <ClCompile Include="..\..\Modules\zlib\zutil.c" />
+    <ClCompile Include="$(zlibDir)\adler32.c" />
+    <ClCompile Include="$(zlibDir)\crc32.c" />
+    <ClCompile Include="$(zlibDir)\inffast.c" />
+    <ClCompile Include="$(zlibDir)\inflate.c" />
+    <ClCompile Include="$(zlibDir)\inftrees.c" />
+    <ClCompile Include="$(zlibDir)\zutil.c" />
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="archive.h" />
+    <ClInclude Include="$(zlibDir)\zlib.h" />
   </ItemGroup>
   <ItemGroup>
     <ResourceCompile Include="install.rc" />
diff --git a/PC/bdist_wininst/bdist_wininst.vcxproj.filters b/PC/bdist_wininst/bdist_wininst.vcxproj.filters
index b4b6a4d514db6..c97742e723970 100644
--- a/PC/bdist_wininst/bdist_wininst.vcxproj.filters
+++ b/PC/bdist_wininst/bdist_wininst.vcxproj.filters
@@ -16,45 +16,51 @@
       <UniqueIdentifier>{0c77c1cf-3f87-4f87-bd86-b425211c2181}</UniqueIdentifier>
       <Extensions>ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe</Extensions>
     </Filter>
+    <Filter Include="Header Files\zlib">
+      <UniqueIdentifier>{d10220c7-69e3-47c5-8d82-c8e0d4d2ac88}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\PC\bdist_wininst\extract.c">
+    <ClCompile Include="extract.c">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\PC\bdist_wininst\install.c">
+    <ClCompile Include="install.c">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\zlib\adler32.c">
+    <ClCompile Include="$(zlibDir)\adler32.c">
       <Filter>Source Files\zlib</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\zlib\crc32.c">
+    <ClCompile Include="$(zlibDir)\crc32.c">
       <Filter>Source Files\zlib</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\zlib\inffast.c">
+    <ClCompile Include="$(zlibDir)\inffast.c">
       <Filter>Source Files\zlib</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\zlib\inflate.c">
+    <ClCompile Include="$(zlibDir)\inflate.c">
       <Filter>Source Files\zlib</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\zlib\inftrees.c">
+    <ClCompile Include="$(zlibDir)\inftrees.c">
       <Filter>Source Files\zlib</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\zlib\zutil.c">
+    <ClCompile Include="$(zlibDir)\zutil.c">
       <Filter>Source Files\zlib</Filter>
     </ClCompile>
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="..\PC\bdist_wininst\archive.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-  </ItemGroup>
-  <ItemGroup>
-    <ResourceCompile Include="..\PC\bdist_wininst\install.rc">
+    <ResourceCompile Include="install.rc">
       <Filter>Resource Files</Filter>
     </ResourceCompile>
   </ItemGroup>
   <ItemGroup>
-    <None Include="..\PC\bdist_wininst\PythonPowered.bmp">
+    <ClInclude Include="archive.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(zlibDir)\zlib.h">
+      <Filter>Header Files\zlib</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="PythonPowered.bmp">
       <Filter>Resource Files</Filter>
     </None>
   </ItemGroup>
diff --git a/PCbuild/_asyncio.vcxproj.filters b/PCbuild/_asyncio.vcxproj.filters
index 10a186cdad1cd..a09ae928a9b5e 100644
--- a/PCbuild/_asyncio.vcxproj.filters
+++ b/PCbuild/_asyncio.vcxproj.filters
@@ -1,16 +1,21 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <ResourceCompile Include="..\PC\python_nt.rc" />
-  </ItemGroup>
   <ItemGroup>
     <Filter Include="Source Files">
       <UniqueIdentifier>{2422278e-eeeb-4241-8182-433e2bc5a7fc}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{41f1cd52-b682-46aa-a7fd-7bdf81a18010}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_asynciomodule.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_bz2.vcxproj.filters b/PCbuild/_bz2.vcxproj.filters
index eac64dd29d6c0..7c0b5162537e0 100644
--- a/PCbuild/_bz2.vcxproj.filters
+++ b/PCbuild/_bz2.vcxproj.filters
@@ -4,10 +4,16 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{f53a859d-dad2-4d5b-ae41-f28d8b571f5a}</UniqueIdentifier>
     </Filter>
-    <Filter Include="bzip2 1.0.6 Header Files">
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{b90c3cee-7700-4e87-bf85-0801866e8d0d}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Header Files">
       <UniqueIdentifier>{7e0bed05-ae33-43b7-8797-656455bbb7f3}</UniqueIdentifier>
     </Filter>
-    <Filter Include="bzip2 1.0.6 Source Files">
+    <Filter Include="Header Files\bzip2">
+      <UniqueIdentifier>{b53f67d8-fdf0-4e10-a987-e44475ff434a}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files\bzip2">
       <UniqueIdentifier>{ed574b89-6983-4cdf-9f98-fe7048d9e89c}</UniqueIdentifier>
     </Filter>
   </ItemGroup>
@@ -16,33 +22,38 @@
       <Filter>Source Files</Filter>
     </ClCompile>
     <ClCompile Include="$(bz2Dir)\blocksort.c">
-      <Filter>bzip2 1.0.6 Source Files</Filter>
+      <Filter>Source Files\bzip2</Filter>
     </ClCompile>
     <ClCompile Include="$(bz2Dir)\bzlib.c">
-      <Filter>bzip2 1.0.6 Source Files</Filter>
+      <Filter>Source Files\bzip2</Filter>
     </ClCompile>
     <ClCompile Include="$(bz2Dir)\compress.c">
-      <Filter>bzip2 1.0.6 Source Files</Filter>
+      <Filter>Source Files\bzip2</Filter>
     </ClCompile>
     <ClCompile Include="$(bz2Dir)\crctable.c">
-      <Filter>bzip2 1.0.6 Source Files</Filter>
+      <Filter>Source Files\bzip2</Filter>
     </ClCompile>
     <ClCompile Include="$(bz2Dir)\decompress.c">
-      <Filter>bzip2 1.0.6 Source Files</Filter>
+      <Filter>Source Files\bzip2</Filter>
     </ClCompile>
     <ClCompile Include="$(bz2Dir)\huffman.c">
-      <Filter>bzip2 1.0.6 Source Files</Filter>
+      <Filter>Source Files\bzip2</Filter>
     </ClCompile>
     <ClCompile Include="$(bz2Dir)\randtable.c">
-      <Filter>bzip2 1.0.6 Source Files</Filter>
+      <Filter>Source Files\bzip2</Filter>
     </ClCompile>
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="$(bz2Dir)\bzlib.h">
-      <Filter>bzip2 1.0.6 Header Files</Filter>
-    </ClInclude>
     <ClInclude Include="$(bz2Dir)\bzlib_private.h">
-      <Filter>bzip2 1.0.6 Header Files</Filter>
+      <Filter>Header Files\bzip2</Filter>
     </ClInclude>
+    <ClInclude Include="$(bz2Dir)\bzlib.h">
+      <Filter>Header Files\bzip2</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
   </ItemGroup>
-</Project>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/_ctypes.vcxproj.filters b/PCbuild/_ctypes.vcxproj.filters
index 3123286347aee..118c4f0698ccb 100644
--- a/PCbuild/_ctypes.vcxproj.filters
+++ b/PCbuild/_ctypes.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{dbdea1f2-ad8b-44ca-b782-fcf65d91559b}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{31a37bb4-c384-41ff-9ec1-8ad98d482e22}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\_ctypes\ctypes.h">
@@ -37,6 +40,8 @@
     </ClCompile>
   </ItemGroup>
   <ItemGroup>
-    <ResourceCompile Include="..\PC\python_nt.rc" />
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_ctypes_test.vcxproj.filters b/PCbuild/_ctypes_test.vcxproj.filters
index c1e94ce1faa0a..5174196c52e4d 100644
--- a/PCbuild/_ctypes_test.vcxproj.filters
+++ b/PCbuild/_ctypes_test.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{38abc486-e143-49dc-8cf0-8aefab0e0d3d}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{5030ff8f-daf5-4bc8-b1dd-e8b59d34c511}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\_ctypes\_ctypes_test.h">
@@ -18,4 +21,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_decimal.vcxproj.filters b/PCbuild/_decimal.vcxproj.filters
index 5f7de3d85381e..0cbd3d0736c24 100644
--- a/PCbuild/_decimal.vcxproj.filters
+++ b/PCbuild/_decimal.vcxproj.filters
@@ -7,55 +7,64 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{138089f8-faba-494f-b6ed-051f31fbaf2d}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{632b24a3-0844-4e57-ad34-b0e4cef886dd}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files\libmpdec">
+      <UniqueIdentifier>{322d127c-1105-4a31-aed2-e29cdececc77}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Header Files\libmpdec">
+      <UniqueIdentifier>{780c3b7a-7817-4e89-a2f2-fc522f2c5966}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="..\Modules\_decimal\libmpdec\basearith.h">
+    <ClInclude Include="..\Modules\_decimal\docstrings.h">
       <Filter>Header Files</Filter>
     </ClInclude>
+    <ClInclude Include="..\Modules\_decimal\libmpdec\basearith.h">
+      <Filter>Header Files\libmpdec</Filter>
+    </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\bits.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\constants.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\convolute.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\crt.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\difradix2.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Modules\_decimal\docstrings.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\fnt.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\fourstep.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\mpdecimal.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\numbertheory.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\sixstep.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\transpose.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\typearith.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\umodarith.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\_decimal\libmpdec\vccompat.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\libmpdec</Filter>
     </ClInclude>
   </ItemGroup>
   <ItemGroup>
@@ -63,51 +72,56 @@
       <Filter>Source Files</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\basearith.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\constants.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\context.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\convolute.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\crt.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\difradix2.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\fnt.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\fourstep.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\io.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\mpalloc.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\mpdecimal.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\numbertheory.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\sixstep.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\_decimal\libmpdec\transpose.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
   <ItemGroup>
     <CustomBuild Include="..\Modules\_decimal\libmpdec\vcdiv64.asm">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\libmpdec</Filter>
     </CustomBuild>
   </ItemGroup>
-</Project>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/_elementtree.vcxproj.filters b/PCbuild/_elementtree.vcxproj.filters
index 6acdf35846ab1..bc14e31f32b95 100644
--- a/PCbuild/_elementtree.vcxproj.filters
+++ b/PCbuild/_elementtree.vcxproj.filters
@@ -7,52 +7,61 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{7b5335ad-059f-486f-85e4-f4757e26a9bf}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{37d3ef0a-1ea6-492d-bba7-b83865198caa}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Header Files\expat">
+      <UniqueIdentifier>{6099ed72-6668-4779-adb2-a2362e5da3b9}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files\expat">
+      <UniqueIdentifier>{f99990ba-cd06-40cc-8f28-d2d424ec13be}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\expat\ascii.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\asciitab.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\expat.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\expat_config.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\expat_external.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\iasciitab.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\internal.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\latin1tab.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\macconfig.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\nametab.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\pyexpatns.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\utf8tab.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\winconfig.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\xmlrole.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
     <ClInclude Include="..\Modules\expat\xmltok.h">
-      <Filter>Header Files</Filter>
+      <Filter>Header Files\expat</Filter>
     </ClInclude>
   </ItemGroup>
   <ItemGroup>
@@ -60,13 +69,18 @@
       <Filter>Source Files</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\expat\xmlparse.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\expat</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\expat\xmlrole.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\expat</Filter>
     </ClCompile>
     <ClCompile Include="..\Modules\expat\xmltok.c">
-      <Filter>Source Files</Filter>
+      <Filter>Source Files\expat</Filter>
     </ClCompile>
   </ItemGroup>
-</Project>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/_freeze_importlib.vcxproj.filters b/PCbuild/_freeze_importlib.vcxproj.filters
index ccad053a9f536..3ee9eb750d67e 100644
--- a/PCbuild/_freeze_importlib.vcxproj.filters
+++ b/PCbuild/_freeze_importlib.vcxproj.filters
@@ -5,13 +5,8 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
-    <Filter Include="Resource Files">
-      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
-      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    <Filter Include="Python Files">
+      <UniqueIdentifier>{eb238244-ace1-48fc-97a4-16ff886f8642}</UniqueIdentifier>
     </Filter>
   </ItemGroup>
   <ItemGroup>
@@ -23,5 +18,11 @@
     <None Include="..\Lib\importlib\_bootstrap.py">
       <Filter>Source Files</Filter>
     </None>
+    <None Include="..\Lib\zipimport.py">
+      <Filter>Python Files</Filter>
+    </None>
+    <None Include="..\Lib\importlib\_bootstrap_external.py">
+      <Filter>Python Files</Filter>
+    </None>
   </ItemGroup>
-</Project>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/_hashlib.vcxproj.filters b/PCbuild/_hashlib.vcxproj.filters
index a9d993eb3ed4a..7a0700c007f64 100644
--- a/PCbuild/_hashlib.vcxproj.filters
+++ b/PCbuild/_hashlib.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{cc45963d-bd25-4eb8-bdba-a5507090bca4}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67630fa4-76e4-4035-bced-043a6df1e2e0}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_hashopenssl.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_lzma.vcxproj.filters b/PCbuild/_lzma.vcxproj.filters
index 0c5ed74608e6e..e23e5399df449 100644
--- a/PCbuild/_lzma.vcxproj.filters
+++ b/PCbuild/_lzma.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{53e68eda-39fc-4336-a658-dc5f5d598760}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{9e5ecf81-2940-4dd5-af98-58e98810d030}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_lzmamodule.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_msi.vcxproj.filters b/PCbuild/_msi.vcxproj.filters
index 7dec52de0b3e5..a94fb18e61e48 100644
--- a/PCbuild/_msi.vcxproj.filters
+++ b/PCbuild/_msi.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{bdef7710-e433-4ac0-84e0-14f34454bd3e}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{8513f324-7c13-4657-b463-5d686a8a5371}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\PC\_msi.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_multiprocessing.vcxproj.filters b/PCbuild/_multiprocessing.vcxproj.filters
index 78133ec0ec845..85caddb10db28 100644
--- a/PCbuild/_multiprocessing.vcxproj.filters
+++ b/PCbuild/_multiprocessing.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{34615a62-f999-4659-83f5-19d17a644530}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{1dcf6347-2248-42e1-ab3c-1b19f4f6f647}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\_multiprocessing\multiprocessing.h">
@@ -21,4 +24,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_overlapped.vcxproj.filters b/PCbuild/_overlapped.vcxproj.filters
index 78de895055905..29a9b77740b15 100644
--- a/PCbuild/_overlapped.vcxproj.filters
+++ b/PCbuild/_overlapped.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{6f67c8db-7de7-4714-a967-2b0d4bc71f2e}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{83fe502d-eca2-4505-b626-eddec9b6ea9f}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\overlapped.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_queue.vcxproj.filters b/PCbuild/_queue.vcxproj.filters
index 88b80826adfee..ec48e9d3aeddf 100644
--- a/PCbuild/_queue.vcxproj.filters
+++ b/PCbuild/_queue.vcxproj.filters
@@ -1,16 +1,21 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <ResourceCompile Include="..\PC\python_nt.rc" />
-  </ItemGroup>
   <ItemGroup>
     <Filter Include="Source Files">
       <UniqueIdentifier>{c56a5dd3-7838-48e9-a781-855d8be7370f}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{bc5dc97e-11b8-435a-82e7-2ef3c9b44f5e}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_queuemodule.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_socket.vcxproj.filters b/PCbuild/_socket.vcxproj.filters
index 790ffa80dd4c8..453175c6a43a6 100644
--- a/PCbuild/_socket.vcxproj.filters
+++ b/PCbuild/_socket.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{1edfe0d0-7b9d-4dc8-a335-b21fef7cc77a}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{f8efff18-28ed-4c6b-8e8d-fa816d9a81a8}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\socketmodule.h">
@@ -18,4 +21,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_sqlite3.vcxproj.filters b/PCbuild/_sqlite3.vcxproj.filters
index dce77c96a8059..51830f6a4451a 100644
--- a/PCbuild/_sqlite3.vcxproj.filters
+++ b/PCbuild/_sqlite3.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{814b187d-44ad-4f2b-baa7-18ca8a8a6a77}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{225f58de-2bad-4e4d-bc0b-fe74ed6bf5f1}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\_sqlite\cache.h">
@@ -66,4 +69,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters
index bd46b609840b2..716a69a41af35 100644
--- a/PCbuild/_ssl.vcxproj.filters
+++ b/PCbuild/_ssl.vcxproj.filters
@@ -4,6 +4,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{695348f7-e9f6-4fe1-bc03-5f08ffc8095b}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{1b18a2e6-040d-46c7-a9ac-ac2ec64fb5d6}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_ssl.c">
@@ -14,6 +17,8 @@
     </ClCompile>
   </ItemGroup>
   <ItemGroup>
-    <ResourceCompile Include="..\PC\python_nt.rc" />
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_testbuffer.vcxproj.filters b/PCbuild/_testbuffer.vcxproj.filters
index eadf282750baa..bea4260b9f743 100644
--- a/PCbuild/_testbuffer.vcxproj.filters
+++ b/PCbuild/_testbuffer.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{8d232240-921a-4bc2-87c3-93ffd3462f0a}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{1e73201a-cca4-4b45-9484-262709cafee7}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_testbuffer.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_testcapi.vcxproj.filters b/PCbuild/_testcapi.vcxproj.filters
index 7a6ad1a864eca..53f64b7aa1e1a 100644
--- a/PCbuild/_testcapi.vcxproj.filters
+++ b/PCbuild/_testcapi.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{a76a90d8-8e8b-4c36-8f58-8bd46abe9f5e}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{071b2ff4-e5a1-4e79-b0c5-cf46b0094a80}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_testcapimodule.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_testconsole.vcxproj.filters b/PCbuild/_testconsole.vcxproj.filters
index 0c25101e1b4fb..321e17785fddb 100644
--- a/PCbuild/_testconsole.vcxproj.filters
+++ b/PCbuild/_testconsole.vcxproj.filters
@@ -5,18 +5,19 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
     <Filter Include="Resource Files">
       <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
       <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\Modules\_testmultiphase.c">
+    <ClCompile Include="..\PC\_testconsole.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_testembed.vcxproj.filters b/PCbuild/_testembed.vcxproj.filters
index f7f9abeb1dfaa..b90fd85f79425 100644
--- a/PCbuild/_testembed.vcxproj.filters
+++ b/PCbuild/_testembed.vcxproj.filters
@@ -5,10 +5,6 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
     <Filter Include="Resource Files">
       <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
       <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
@@ -19,4 +15,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_testimportmultiple.vcxproj.filters b/PCbuild/_testimportmultiple.vcxproj.filters
index db0d0a65e1290..8f63d13482513 100644
--- a/PCbuild/_testimportmultiple.vcxproj.filters
+++ b/PCbuild/_testimportmultiple.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{1ec38ad9-1abf-4b80-8628-ac43ccba324b}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{0ff128a6-7814-4f8e-826e-860a858104ee}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_testimportmultiple.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
-</Project>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/_testinternalcapi.vcxproj.filters b/PCbuild/_testinternalcapi.vcxproj.filters
index 4644f230be1ce..7734da0b7b426 100644
--- a/PCbuild/_testinternalcapi.vcxproj.filters
+++ b/PCbuild/_testinternalcapi.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{136fc5eb-7fe4-4486-8c6d-b49f37a00199}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{acecc890-f8dd-4942-b6d2-1fd8f73a5d6c}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_testinternalcapi.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
-</Project>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/_testmultiphase.vcxproj.filters b/PCbuild/_testmultiphase.vcxproj.filters
index 0c25101e1b4fb..8df0a42e9f3c7 100644
--- a/PCbuild/_testmultiphase.vcxproj.filters
+++ b/PCbuild/_testmultiphase.vcxproj.filters
@@ -5,10 +5,6 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
     <Filter Include="Resource Files">
       <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
       <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
@@ -19,4 +15,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_tkinter.vcxproj.filters b/PCbuild/_tkinter.vcxproj.filters
index 4e5cd479e30b5..0d919439a76af 100644
--- a/PCbuild/_tkinter.vcxproj.filters
+++ b/PCbuild/_tkinter.vcxproj.filters
@@ -4,6 +4,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{b9ce64dd-cb95-472d-bbe8-5583b2cd375b}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{2bd3a90c-5b2e-45fb-9b2a-fbf1a4faf5f9}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_tkinter.c">
@@ -13,4 +16,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_uuid.vcxproj.filters b/PCbuild/_uuid.vcxproj.filters
index 1794929231434..705902ff50c3a 100644
--- a/PCbuild/_uuid.vcxproj.filters
+++ b/PCbuild/_uuid.vcxproj.filters
@@ -5,10 +5,18 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{4fa4dbfa-e069-4ab4-86a6-ad389b2ec407}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_uuidmodule.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/_zoneinfo.vcxproj.filters b/PCbuild/_zoneinfo.vcxproj.filters
index e3c3ef4c72a7f..57f31e05d561a 100644
--- a/PCbuild/_zoneinfo.vcxproj.filters
+++ b/PCbuild/_zoneinfo.vcxproj.filters
@@ -1,16 +1,21 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <ResourceCompile Include="..\PC\python_nt.rc" />
-  </ItemGroup>
   <ItemGroup>
     <Filter Include="Source Files">
       <UniqueIdentifier>{2422278e-eeeb-4241-8182-433e2bc5a7fc}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{0616fb85-7891-4790-83c2-005f906cf555}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\_zoneinfo.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
-</Project>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/liblzma.vcxproj.filters b/PCbuild/liblzma.vcxproj.filters
new file mode 100644
index 0000000000000..3f58351fa9edb
--- /dev/null
+++ b/PCbuild/liblzma.vcxproj.filters
@@ -0,0 +1,435 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{cb1870af-3c7e-48ba-bd7f-3e87468f8ed7}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{58761ffe-2af0-42a8-9f93-4e57e1954c36}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\alone_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\alone_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\arm.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\armthumb.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\auto_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\block_buffer_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\block_buffer_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\block_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\block_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\block_header_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\block_header_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\check\check.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\common.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\block_util.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\check\crc32_fast.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\check\crc32_table.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\check\crc64_fast.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\check\crc64_table.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\delta\delta_common.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\delta\delta_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\delta\delta_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\easy_buffer_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\easy_decoder_memusage.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\easy_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\easy_preset.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\easy_encoder_memusage.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\fastpos_table.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\filter_buffer_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\filter_buffer_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\filter_common.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\filter_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\filter_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\filter_flags_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\filter_flags_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\hardware_cputhreads.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\hardware_physmem.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\index.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\index_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\index_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\index_hash.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lz\lz_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lz\lz_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lz\lz_encoder_mf.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\ia64.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\lzma_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\lzma_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\lzma_encoder_optimum_fast.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\lzma_encoder_optimum_normal.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\lzma_encoder_presets.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\lzma2_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\x86.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\vli_size.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\vli_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\vli_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\common\tuklib_physmem.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\common\tuklib_cpucores.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_flags_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_flags_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_flags_common.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_encoder_mt.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_buffer_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\stream_buffer_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\sparc.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\simple_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\simple_decoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\simple_coder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\check\sha256.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\rangecoder\price_table.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\simple\powerpc.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\common\outqueue.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="$(lzmaDir)src\liblzma\lzma\lzma2_encoder.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(lzmaDir)src\common\mythread.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\common\sysdefs.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\common\tuklib_common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\common\tuklib_config.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\common\tuklib_cpucores.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\common\tuklib_integer.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\common\tuklib_physmem.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\base.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\bcj.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\block.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\check.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\container.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\delta.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\filter.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\hardware.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\index_hash.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\index.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\lzma12.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\stream_flags.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\version.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\api\lzma\vli.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\check\check.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\check\crc_macros.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\check\crc32_table_be.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\check\crc32_table_le.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\check\crc64_table_be.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\check\crc64_table_le.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\alone_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\block_buffer_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\block_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\block_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\easy_preset.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\filter_common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\filter_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\filter_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\index_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\index.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\memcmplen.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\outqueue.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\stream_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\common\stream_flags_common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\delta\delta_common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\delta\delta_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\delta\delta_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\delta\delta_private.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lz\lz_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lz\lz_encoder_hash_table.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lz\lz_encoder_hash.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lz\lz_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lzma\fastpos.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lzma\lzma_common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lzma\lzma_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lzma\lzma_encoder_private.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lzma\lzma_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lzma\lzma2_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\lzma\lzma2_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\rangecoder\price.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\rangecoder\range_common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\rangecoder\range_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\rangecoder\range_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\simple\simple_coder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\simple\simple_decoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\simple\simple_encoder.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)src\liblzma\simple\simple_private.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="$(lzmaDir)windows\config.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln
index 61db4e02ad383..4b6dc1e6771dc 100644
--- a/PCbuild/pcbuild.sln
+++ b/PCbuild/pcbuild.sln
@@ -1267,6 +1267,38 @@ Global
 		{384C224A-7474-476E-A01B-750EA7DE918C}.Release|Win32.Build.0 = Release|Win32
 		{384C224A-7474-476E-A01B-750EA7DE918C}.Release|x64.ActiveCfg = Release|x64
 		{384C224A-7474-476E-A01B-750EA7DE918C}.Release|x64.Build.0 = Release|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|ARM.ActiveCfg = Debug|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|ARM.Build.0 = Debug|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|ARM64.ActiveCfg = Debug|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|ARM64.Build.0 = Debug|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|Win32.ActiveCfg = Debug|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|Win32.Build.0 = Debug|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|x64.ActiveCfg = Debug|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Debug|x64.Build.0 = Debug|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|ARM.ActiveCfg = PGInstrument|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|ARM.Build.0 = PGInstrument|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|ARM64.ActiveCfg = PGInstrument|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|ARM64.Build.0 = PGInstrument|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|Win32.Build.0 = PGInstrument|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|x64.ActiveCfg = PGInstrument|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGInstrument|x64.Build.0 = PGInstrument|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|ARM.ActiveCfg = PGUpdate|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|ARM.Build.0 = PGUpdate|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|ARM64.ActiveCfg = PGUpdate|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|ARM64.Build.0 = PGUpdate|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|Win32.Build.0 = PGUpdate|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|x64.ActiveCfg = PGUpdate|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.PGUpdate|x64.Build.0 = PGUpdate|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|ARM.ActiveCfg = Release|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|ARM.Build.0 = Release|ARM
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|ARM64.ActiveCfg = Release|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|ARM64.Build.0 = Release|ARM64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|Win32.ActiveCfg = Release|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|Win32.Build.0 = Release|Win32
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|x64.ActiveCfg = Release|x64
+		{FCBE1EF2-E0F0-40B1-88B5-00A35D378742}.Release|x64.Build.0 = Release|x64
 		{78D80A15-BD8C-44E2-B49E-1F05B0A0A687}.Debug|ARM.ActiveCfg = Debug|ARM
 		{78D80A15-BD8C-44E2-B49E-1F05B0A0A687}.Debug|ARM.Build.0 = Debug|ARM
 		{78D80A15-BD8C-44E2-B49E-1F05B0A0A687}.Debug|ARM64.ActiveCfg = Debug|ARM64
diff --git a/PCbuild/pyexpat.vcxproj.filters b/PCbuild/pyexpat.vcxproj.filters
index f8d46026c9c28..fd22fc8c477df 100644
--- a/PCbuild/pyexpat.vcxproj.filters
+++ b/PCbuild/pyexpat.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{5af9d40c-fc46-4640-ad84-3d1dd34a71d7}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{f1dbbdb5-41e5-4a88-bf8e-13da010c0ce4}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\expat\xmlrole.h">
@@ -30,4 +33,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
-</Project>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/pylauncher.vcxproj.filters b/PCbuild/pylauncher.vcxproj.filters
index e4b23d2af8366..17d0389ca50f1 100644
--- a/PCbuild/pylauncher.vcxproj.filters
+++ b/PCbuild/pylauncher.vcxproj.filters
@@ -5,10 +5,6 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
     <Filter Include="Resource Files">
       <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
       <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
diff --git a/PCbuild/pyshellext.vcxproj.filters b/PCbuild/pyshellext.vcxproj.filters
index 648e499f6f402..36d1d1655f5df 100644
--- a/PCbuild/pyshellext.vcxproj.filters
+++ b/PCbuild/pyshellext.vcxproj.filters
@@ -5,10 +5,6 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
     <Filter Include="Resource Files">
       <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
       <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
diff --git a/PCbuild/python3dll.vcxproj.filters b/PCbuild/python3dll.vcxproj.filters
index d250c45254e80..a7566052e1204 100644
--- a/PCbuild/python3dll.vcxproj.filters
+++ b/PCbuild/python3dll.vcxproj.filters
@@ -5,10 +5,6 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
     <Filter Include="Resource Files">
       <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
       <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
diff --git a/PCbuild/python_uwp.vcxproj.filters b/PCbuild/python_uwp.vcxproj.filters
new file mode 100644
index 0000000000000..79e87461eb1b7
--- /dev/null
+++ b/PCbuild/python_uwp.vcxproj.filters
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{fd8bf000-0bbe-4fd4-ac49-29036e5a5c5a}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{a0d4ce0b-a7b5-4a77-b6c2-d2ddb9bd49b8}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\PC\pycon.ico">
+      <Filter>Resource Files</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_exe.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\PC\python_uwp.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj
index 54e23c2c2b505..db26e38911bc0 100644
--- a/PCbuild/pythoncore.vcxproj
+++ b/PCbuild/pythoncore.vcxproj
@@ -134,8 +134,10 @@
     <ClInclude Include="..\Include\cpython\dictobject.h" />
     <ClInclude Include="..\Include\cpython\fileobject.h" />
     <ClInclude Include="..\Include\cpython\fileutils.h" />
+    <ClInclude Include="..\Include\cpython\frameobject.h" />
     <ClInclude Include="..\Include\cpython\import.h" />
     <ClInclude Include="..\Include\cpython\initconfig.h" />
+    <ClInclude Include="..\Include\cpython\interpreteridobject.h" />
     <ClInclude Include="..\Include\cpython\listobject.h" />
     <ClInclude Include="..\Include\cpython\methodobject.h" />
     <ClInclude Include="..\Include\cpython\object.h" />
@@ -174,6 +176,7 @@
     <ClInclude Include="..\Include\internal\pycore_context.h" />
     <ClInclude Include="..\Include\internal\pycore_dtoa.h" />
     <ClInclude Include="..\Include\internal\pycore_fileutils.h" />
+    <ClInclude Include="..\Include\internal\pycore_gc.h" />
     <ClInclude Include="..\Include\internal\pycore_getopt.h" />
     <ClInclude Include="..\Include\internal\pycore_gil.h" />
     <ClInclude Include="..\Include\internal\pycore_hamt.h" />
diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters
index 4ba0bc2ac3bfa..1f3883768c9a2 100644
--- a/PCbuild/pythoncore.vcxproj.filters
+++ b/PCbuild/pythoncore.vcxproj.filters
@@ -31,6 +31,12 @@
     <Filter Include="Resource Files">
       <UniqueIdentifier>{c3e03a5c-56c7-45fd-8543-e5d2326b907d}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Include\internal">
+      <UniqueIdentifier>{86ffb5eb-c423-43aa-b736-a8850d3277df}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Include\cpython">
+      <UniqueIdentifier>{875bf4f2-ac42-46bd-b703-8371a824ec32}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Include\abstract.h">
@@ -75,72 +81,6 @@
     <ClInclude Include="..\Include\context.h">
       <Filter>Include</Filter>
     </ClInclude>
-    <ClInclude Include="..\Include\cpython\abstract.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\bytearrayobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\bytesobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\ceval.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\code.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\dictobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\fileobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\fileutils.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\import.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\initconfig.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\listobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\methodobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\object.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\objimpl.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\pyerrors.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\pylifecycle.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\pymem.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\pystate.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\sysmodule.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\traceback.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\tupleobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\cpython\unicodeobject.h">
-      <Filter>Include</Filter>
-    </ClInclude>
     <ClInclude Include="..\Include\datetime.h">
       <Filter>Include</Filter>
     </ClInclude>
@@ -183,105 +123,6 @@
     <ClInclude Include="..\Include\import.h">
       <Filter>Include</Filter>
     </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_abstract.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_accu.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_atomic.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_bitutils.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_bytes_methods.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_call.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_code.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_ceval.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_condvar.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_context.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_dtoa.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_fileutils.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_getopt.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_gil.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_hamt.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_hashtable.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_import.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_initconfig.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_interp.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_list.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_object.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_pathconfig.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_pyerrors.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_pyframe.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_pyhash.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_pylifecycle.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_pymem.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_pystate.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_runtime.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_sysmodule.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_traceback.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_tuple.h">
-      <Filter>Include</Filter>
-    </ClInclude>
-    <ClInclude Include="..\Include\internal\pycore_warnings.h">
-      <Filter>Include</Filter>
-    </ClInclude>
     <ClInclude Include="..\Include\intrcheck.h">
       <Filter>Include</Filter>
     </ClInclude>
@@ -549,6 +390,189 @@
     <ClInclude Include="..\Include\odictobject.h">
       <Filter>Include</Filter>
     </ClInclude>
+    <ClInclude Include="..\Parser\pegen.h">
+      <Filter>Parser</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Parser\string_parser.h">
+      <Filter>Parser</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\pyframe.h">
+      <Filter>Include</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\abstract.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\bytearrayobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\bytesobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\ceval.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\code.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\dictobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\fileobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\fileutils.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\import.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\listobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\unicodeobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\methodobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\objimpl.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\object.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\pyerrors.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\pymem.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\pylifecycle.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\tupleobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\traceback.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\frameobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\interpreteridobject.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\sysmodule.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\pystate.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\cpython\initconfig.h">
+      <Filter>Include\cpython</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\parser_interface.h">
+      <Filter>Include</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_warnings.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_abstract.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_accu.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_atomic.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_bitutils.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_bytes_methods.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_call.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_ceval.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_code.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_condvar.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_context.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_dtoa.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_fileutils.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_gc.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_getopt.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_gil.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_hamt.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_hashtable.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_import.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_initconfig.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_interp.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_list.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_object.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_pathconfig.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_pyerrors.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_pyhash.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_pylifecycle.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_pymem.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_pystate.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_runtime.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_sysmodule.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_traceback.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
+    <ClInclude Include="..\Include\internal\pycore_tuple.h">
+      <Filter>Include\internal</Filter>
+    </ClInclude>
     <ClInclude Include="$(zlibDir)\crc32.h">
       <Filter>Modules\zlib</Filter>
     </ClInclude>
@@ -629,9 +653,6 @@
     <ClCompile Include="..\Modules\_pickle.c">
       <Filter>Modules</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\_queuemodule.c">
-      <Filter>Modules</Filter>
-    </ClCompile>
     <ClCompile Include="..\Modules\_randommodule.c">
       <Filter>Modules</Filter>
     </ClCompile>
@@ -695,9 +716,6 @@
     <ClCompile Include="..\Modules\_operator.c">
       <Filter>Modules</Filter>
     </ClCompile>
-    <ClCompile Include="..\Modules\parsermodule.c">
-      <Filter>Modules</Filter>
-    </ClCompile>
     <ClCompile Include="..\Modules\posixmodule.c">
       <Filter>Modules</Filter>
     </ClCompile>
@@ -893,18 +911,6 @@
     <ClCompile Include="..\Objects\weakrefobject.c">
       <Filter>Objects</Filter>
     </ClCompile>
-    <ClCompile Include="..\Parser\pegen\pegen.c">
-      <Filter>Parser</Filter>
-    </ClCompile>
-    <ClCompile Include="..\Parser\pegen\parse.c">
-      <Filter>Parser</Filter>
-    </ClCompile>
-    <ClCompile Include="..\Parser\pegen\parse_string.c">
-      <Filter>Parser</Filter>
-    </ClCompile>
-    <ClCompile Include="..\Parser\pegen\peg_api.c">
-      <Filter>Parser</Filter>
-    </ClCompile>
     <ClCompile Include="..\Parser\myreadline.c">
       <Filter>Parser</Filter>
     </ClCompile>
@@ -956,9 +962,6 @@
     <ClCompile Include="..\Python\compile.c">
       <Filter>Python</Filter>
     </ClCompile>
-    <ClCompile Include="..\Python\context.h">
-      <Filter>Python</Filter>
-    </ClCompile>
     <ClCompile Include="..\Python\dynamic_annotations.c">
       <Filter>Python</Filter>
     </ClCompile>
@@ -998,9 +1001,6 @@
     <ClCompile Include="..\Python\getversion.c">
       <Filter>Python</Filter>
     </ClCompile>
-    <ClCompile Include="..\Python\hamt.h">
-      <Filter>Python</Filter>
-    </ClCompile>
     <ClCompile Include="..\Python\hashtable.c">
       <Filter>Modules</Filter>
     </ClCompile>
@@ -1118,9 +1118,6 @@
     <ClCompile Include="..\Objects\odictobject.c">
       <Filter>Objects</Filter>
     </ClCompile>
-    <ClCompile Include="..\PC\_findvs.cpp">
-      <Filter>PC</Filter>
-    </ClCompile>
     <ClCompile Include="..\Modules\_contextvarsmodule.c">
       <Filter>Modules</Filter>
     </ClCompile>
@@ -1157,10 +1154,34 @@
     <ClCompile Include="$(zlibDir)\zutil.c">
       <Filter>Modules\zlib</Filter>
     </ClCompile>
+    <ClCompile Include="..\Python\hamt.c">
+      <Filter>Python</Filter>
+    </ClCompile>
+    <ClCompile Include="..\Parser\parser.c">
+      <Filter>Parser</Filter>
+    </ClCompile>
+    <ClCompile Include="..\Parser\pegen.c">
+      <Filter>Parser</Filter>
+    </ClCompile>
+    <ClCompile Include="..\Parser\peg_api.c">
+      <Filter>Parser</Filter>
+    </ClCompile>
+    <ClCompile Include="..\Modules\_xxsubinterpretersmodule.c">
+      <Filter>Modules</Filter>
+    </ClCompile>
+    <ClCompile Include="..\Parser\string_parser.c">
+      <Filter>Parser</Filter>
+    </ClCompile>
+    <ClCompile Include="..\Python\context.c">
+      <Filter>Python</Filter>
+    </ClCompile>
+    <ClCompile Include="..\Objects\genericaliasobject.c">
+      <Filter>Objects</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ResourceCompile Include="..\PC\python_nt.rc">
       <Filter>Resource Files</Filter>
     </ResourceCompile>
   </ItemGroup>
-</Project>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/pythonw.vcxproj.filters b/PCbuild/pythonw.vcxproj.filters
index 259866fbcc2f8..20d87051e2511 100644
--- a/PCbuild/pythonw.vcxproj.filters
+++ b/PCbuild/pythonw.vcxproj.filters
@@ -8,14 +8,14 @@
       <UniqueIdentifier>{e1d8ea6b-c65d-42f4-9eed-6010846ed378}</UniqueIdentifier>
     </Filter>
   </ItemGroup>
-  <ItemGroup>
-    <ResourceCompile Include="..\PC\python_exe.rc">
-      <Filter>Resource Files</Filter>
-    </ResourceCompile>
-  </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\PC\WinMain.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\pythonw_exe.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/pythonw_uwp.vcxproj.filters b/PCbuild/pythonw_uwp.vcxproj.filters
new file mode 100644
index 0000000000000..2f39bdea9e910
--- /dev/null
+++ b/PCbuild/pythonw_uwp.vcxproj.filters
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{de05f656-4dcb-4fe7-9946-5c325ea2d842}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4102e199-3e5c-42d0-b37b-d42394b20d9e}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\PC\pyconw.ico">
+      <Filter>Resource Files</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\pythonw_exe.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\PC\python_uwp.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/pywlauncher.vcxproj.filters b/PCbuild/pywlauncher.vcxproj.filters
index e4b23d2af8366..17d0389ca50f1 100644
--- a/PCbuild/pywlauncher.vcxproj.filters
+++ b/PCbuild/pywlauncher.vcxproj.filters
@@ -5,10 +5,6 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
     <Filter Include="Resource Files">
       <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
       <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
diff --git a/PCbuild/select.vcxproj.filters b/PCbuild/select.vcxproj.filters
index 55a2fc834a357..5354820dd49cc 100644
--- a/PCbuild/select.vcxproj.filters
+++ b/PCbuild/select.vcxproj.filters
@@ -4,10 +4,18 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{98346077-900c-4c7a-852f-a23470e37b40}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{b47a8e6c-47c0-4490-aa91-1a3624a0905c}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\Modules\selectmodule.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/sqlite3.vcxproj.filters b/PCbuild/sqlite3.vcxproj.filters
index 86680c1c38303..76662ed68d024 100644
--- a/PCbuild/sqlite3.vcxproj.filters
+++ b/PCbuild/sqlite3.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{0e842fe2-176b-4e83-9d1f-0ad13a859efd}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{0248795a-00c9-4090-ad61-55ae23438598}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="$(sqlite3Dir)\sqlite3.h">
@@ -21,4 +24,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\sqlite3.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/unicodedata.vcxproj.filters b/PCbuild/unicodedata.vcxproj.filters
index 20e640ee11ede..7ff97835c9623 100644
--- a/PCbuild/unicodedata.vcxproj.filters
+++ b/PCbuild/unicodedata.vcxproj.filters
@@ -7,6 +7,9 @@
     <Filter Include="Source Files">
       <UniqueIdentifier>{e2c055bb-ec62-4bbc-aa1c-d88da4d4ad1c}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{d04f3447-67b0-42aa-b84f-9fc0029d5af7}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\Modules\unicodedata_db.h">
@@ -21,4 +24,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/PCbuild/venvlauncher.vcxproj.filters b/PCbuild/venvlauncher.vcxproj.filters
new file mode 100644
index 0000000000000..ec13936bf6cb7
--- /dev/null
+++ b/PCbuild/venvlauncher.vcxproj.filters
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{8f3ab79e-3cba-4e6d-82b2-559ce946de58}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4a2423af-e5d1-4c88-b308-d71b768977df}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\PC\launcher.ico">
+      <Filter>Resource Files</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\pylauncher.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\PC\launcher.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/venvwlauncher.vcxproj.filters b/PCbuild/venvwlauncher.vcxproj.filters
new file mode 100644
index 0000000000000..8addc13e977e7
--- /dev/null
+++ b/PCbuild/venvwlauncher.vcxproj.filters
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{7683f248-9c32-4e72-a329-5bd84993f63a}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{61b34b26-ce53-405d-a743-b370ff505887}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\PC\launcher.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\PC\launcher.ico">
+      <Filter>Resource Files</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\pylauncher.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/PCbuild/winsound.vcxproj.filters b/PCbuild/winsound.vcxproj.filters
index 7d08931b186d9..6775802638205 100644
--- a/PCbuild/winsound.vcxproj.filters
+++ b/PCbuild/winsound.vcxproj.filters
@@ -5,10 +5,18 @@
       <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
       <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
     </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{6be42502-398f-4bec-8677-8809a2da0eef}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\PC\winsound.c">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\PC\python_nt.rc">
+      <Filter>Resource Files</Filter>
+    </ResourceCompile>
+  </ItemGroup>
 </Project>
\ No newline at end of file



More information about the Python-checkins mailing list