diff --git a/platforms/Windows/WiXCodeSigning.targets b/platforms/Windows/WiXCodeSigning.targets
new file mode 100644
index 00000000..2a6b984a
--- /dev/null
+++ b/platforms/Windows/WiXCodeSigning.targets
@@ -0,0 +1,69 @@
+
+
+
+ false
+ $(SignOutput)
+
+
+
+
+ $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots', 'KitsRoot10', null, RegistryView.Registry32, RegistryView.Default))
+ $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots', 'KitsRoot81', null, RegistryView.Registry32, RegistryView.Default))
+ $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots', 'KitsRoot', null, RegistryView.Registry32, RegistryView.Default))
+
+
+ $(WindowsKitsRoot)bin\10.0.22621.0\x64\
+ $(WindowsKitsRoot)bin\10.0.22000.0\x64\
+
+ $(WindowsKitsRoot)bin\10.0.20348.0\x64\
+ $(WindowsKitsRoot)bin\10.0.19041.0\x64\
+ $(WindowsKitsRoot)bin\10.0.18362.0\x64\
+ $(WindowsKitsRoot)bin\10.0.17763.0\x64\
+ $(WindowsKitsRoot)bin\10.0.17134.0\x64\
+ $(WindowsKitsRoot)bin\10.0.16299.0\x64\
+ $(WindowsKitsRoot)bin\10.0.15063.0\x64\
+ $(WindowsKitsRoot)bin\10.0.14393.0\x64\
+ $(WindowsKitsRoot)bin\10.0.10586.0\x64\
+ $(WindowsKitsRoot)bin\10.0.10240.0\x64\
+
+ $(WindowsKitsRoot)bin\x64\
+
+
+ $(WindowsKitsRoot)bin\10.0.22621.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.22000.0\arm64\
+
+ $(WindowsKitsRoot)bin\10.0.20348.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.19041.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.18362.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.17763.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.17134.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.16299.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.15063.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.14393.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.10586.0\arm64\
+ $(WindowsKitsRoot)bin\10.0.10240.0\arm64\
+
+ "$(SignToolPath)signtool.exe" sign /f "$(CERTIFICATE)" /p "$(PASSPHRASE)" /tr http://timestamp.digicert.com /fd sha256 /td sha256
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platforms/Windows/devtools.wixproj b/platforms/Windows/devtools.wixproj
index fbf86678..eed5d624 100644
--- a/platforms/Windows/devtools.wixproj
+++ b/platforms/Windows/devtools.wixproj
@@ -27,6 +27,8 @@
+
+
ProductVersion=$(ProductVersion);DEVTOOLS_ROOT=$(DEVTOOLS_ROOT);
false
diff --git a/platforms/Windows/installer.wixproj b/platforms/Windows/installer.wixproj
index d2ad2e72..a164d1bc 100644
--- a/platforms/Windows/installer.wixproj
+++ b/platforms/Windows/installer.wixproj
@@ -30,6 +30,8 @@
+
+
ProductVersion=$(ProductVersion);RequiredChain=$(RequiredChain);OptionalChain=$(OptionalChain);MSI_LOCATION=$(MSI_LOCATION);
diff --git a/platforms/Windows/runtime.wixproj b/platforms/Windows/runtime.wixproj
index 85d682f2..f464d2d7 100644
--- a/platforms/Windows/runtime.wixproj
+++ b/platforms/Windows/runtime.wixproj
@@ -27,6 +27,8 @@
+
+
ProductVersion=$(ProductVersion);SDK_ROOT=$(SDK_ROOT);$(INCLUDE_DEBUG_INFO)
diff --git a/platforms/Windows/sdk.wixproj b/platforms/Windows/sdk.wixproj
index 7d89b6d4..e9070465 100644
--- a/platforms/Windows/sdk.wixproj
+++ b/platforms/Windows/sdk.wixproj
@@ -27,6 +27,8 @@
+
+
ProductVersion=$(ProductVersion);PLATFORM_ROOT=$(PLATFORM_ROOT);SDK_ROOT=$(SDK_ROOT);SWIFT_SOURCE_DIR=$(SWIFT_SOURCE_DIR);SwiftShimsPath=$(SDK_ROOT)\usr\lib\swift\shims;
false
diff --git a/platforms/Windows/toolchain.wixproj b/platforms/Windows/toolchain.wixproj
index b742f9f8..0739c724 100644
--- a/platforms/Windows/toolchain.wixproj
+++ b/platforms/Windows/toolchain.wixproj
@@ -27,6 +27,8 @@
+
+
ProductVersion=$(ProductVersion);DEVTOOLS_ROOT=$(DEVTOOLS_ROOT);TOOLCHAIN_ROOT=$(TOOLCHAIN_ROOT);TOOLCHAIN_ROOT_USR_LIB_CLANG=$(TOOLCHAIN_ROOT)\usr\lib\clang;$(INCLUDE_DEBUG_INFO)
false