diff --git a/PC/pylauncher.rc b/PC/pylauncher.rc
index 92987af713..d21f9b6e9d 100644
--- a/PC/pylauncher.rc
+++ b/PC/pylauncher.rc
@@ -4,7 +4,6 @@
 
 // Include the manifest file that indicates we support all
 // current versions of Windows.
-#include <winuser.h>
 1 RT_MANIFEST "python.manifest"
 
 #if defined(PY_ICON)
diff --git a/PC/pyshellext.rc b/PC/pyshellext.rc
index e5924a42da..fc607e9784 100644
--- a/PC/pyshellext.rc
+++ b/PC/pyshellext.rc
@@ -4,7 +4,6 @@
 
 // Include the manifest file that indicates we support all
 // current versions of Windows.
-#include <winuser.h>
 1 RT_MANIFEST "python.manifest"
 
 /////////////////////////////////////////////////////////////////////////////
diff --git a/PC/python_exe.rc b/PC/python_exe.rc
index ae0b029b80..5eba89962b 100644
--- a/PC/python_exe.rc
+++ b/PC/python_exe.rc
@@ -4,7 +4,6 @@
 
 // Include the manifest file that indicates we support all
 // current versions of Windows.
-#include <winuser.h>
 1 RT_MANIFEST "python.manifest"
 
 1 ICON DISCARDABLE "icons\python.ico" 
diff --git a/PC/python_nt.rc b/PC/python_nt.rc
index fac6105d8a..33cee42cb7 100644
--- a/PC/python_nt.rc
+++ b/PC/python_nt.rc
@@ -4,7 +4,6 @@
 
 // Include the manifest file that indicates we support all
 // current versions of Windows.
-#include <winuser.h>
 2 RT_MANIFEST "python.manifest"
 
 // String Tables
diff --git a/PC/pythonw_exe.rc b/PC/pythonw_exe.rc
index 88bf3592e1..562652be18 100644
--- a/PC/pythonw_exe.rc
+++ b/PC/pythonw_exe.rc
@@ -4,7 +4,6 @@
 
 // Include the manifest file that indicates we support all
 // current versions of Windows.
-#include <winuser.h>
 1 RT_MANIFEST "python.manifest"
 
 1 ICON DISCARDABLE "icons\pythonw.ico" 
diff --git a/PC/sqlite3.rc b/PC/sqlite3.rc
index 84bd87d9d5..d2c18f8add 100644
--- a/PC/sqlite3.rc
+++ b/PC/sqlite3.rc
@@ -4,7 +4,6 @@
 
 // Include the manifest file that indicates we support all
 // current versions of Windows.
-#include <winuser.h>
 2 RT_MANIFEST "python.manifest"
 
 /////////////////////////////////////////////////////////////////////////////
diff --git a/PC/pylauncher.rc b/PC/pylauncher.rc
index d21f9b6e9d..ff7e71e0fd 100644
--- a/PC/pylauncher.rc
+++ b/PC/pylauncher.rc
@@ -2,6 +2,11 @@
 
 #include "python_ver_rc.h"
 
+#ifndef RT_MANIFEST
+// bpo-45220: Cannot reliably #include RT_MANIFEST from
+// anywhere, so we hardcode it
+#define RT_MANIFEST 24
+#endif
 // Include the manifest file that indicates we support all
 // current versions of Windows.
 1 RT_MANIFEST "python.manifest"
diff --git a/PC/pyshellext.rc b/PC/pyshellext.rc
index fc607e9784..af797ce95d 100644
--- a/PC/pyshellext.rc
+++ b/PC/pyshellext.rc
@@ -2,6 +2,12 @@
 
 #include "python_ver_rc.h"
 
+#ifndef RT_MANIFEST
+// bpo-45220: Cannot reliably #include RT_MANIFEST from
+// anywhere, so we hardcode it
+#define RT_MANIFEST 24
+#endif
+
 // Include the manifest file that indicates we support all
 // current versions of Windows.
 1 RT_MANIFEST "python.manifest"
diff --git a/PC/python_exe.rc b/PC/python_exe.rc
index 5eba89962b..c3d3bff019 100644
--- a/PC/python_exe.rc
+++ b/PC/python_exe.rc
@@ -2,6 +2,12 @@
 
 #include "python_ver_rc.h"
 
+#ifndef RT_MANIFEST
+// bpo-45220: Cannot reliably #include RT_MANIFEST from
+// anywhere, so we hardcode it
+#define RT_MANIFEST 24
+#endif
+
 // Include the manifest file that indicates we support all
 // current versions of Windows.
 1 RT_MANIFEST "python.manifest"
diff --git a/PC/python_nt.rc b/PC/python_nt.rc
index 33cee42cb7..539362cdc2 100644
--- a/PC/python_nt.rc
+++ b/PC/python_nt.rc
@@ -2,6 +2,12 @@
 
 #include "python_ver_rc.h"
 
+#ifndef RT_MANIFEST
+// bpo-45220: Cannot reliably #include RT_MANIFEST from
+// anywhere, so we hardcode it
+#define RT_MANIFEST 24
+#endif
+
 // Include the manifest file that indicates we support all
 // current versions of Windows.
 2 RT_MANIFEST "python.manifest"
diff --git a/PC/pythonw_exe.rc b/PC/pythonw_exe.rc
index 562652be18..38570b74fa 100644
--- a/PC/pythonw_exe.rc
+++ b/PC/pythonw_exe.rc
@@ -2,6 +2,12 @@
 
 #include "python_ver_rc.h"
 
+#ifndef RT_MANIFEST
+// bpo-45220: Cannot reliably #include RT_MANIFEST from
+// anywhere, so we hardcode it
+#define RT_MANIFEST 24
+#endif
+
 // Include the manifest file that indicates we support all
 // current versions of Windows.
 1 RT_MANIFEST "python.manifest"
diff --git a/PC/sqlite3.rc b/PC/sqlite3.rc
index d2c18f8add..9ae2aa0f6f 100644
--- a/PC/sqlite3.rc
+++ b/PC/sqlite3.rc
@@ -2,6 +2,12 @@
 
 #include <winver.h>
 
+#ifndef RT_MANIFEST
+// bpo-45220: Cannot reliably #include RT_MANIFEST from
+// anywhere, so we hardcode it
+#define RT_MANIFEST 24
+#endif
+
 // Include the manifest file that indicates we support all
 // current versions of Windows.
 2 RT_MANIFEST "python.manifest"
