diff --git a/.github/actions/spell-check/dictionary/microsoft.txt b/.github/actions/spell-check/dictionary/microsoft.txt
index 6421c6bb666..50831af918c 100644
--- a/.github/actions/spell-check/dictionary/microsoft.txt
+++ b/.github/actions/spell-check/dictionary/microsoft.txt
@@ -5,4 +5,5 @@ microsoftonline
osgvsowi
powershell
tdbuildteamid
+vcruntime
visualstudio
diff --git a/.github/actions/spell-check/whitelist/whitelist.txt b/.github/actions/spell-check/whitelist/whitelist.txt
index f71dde01479..58da42f6e46 100644
--- a/.github/actions/spell-check/whitelist/whitelist.txt
+++ b/.github/actions/spell-check/whitelist/whitelist.txt
@@ -596,6 +596,7 @@ Delt
demoable
depersist
deprioritized
+deps
deque
deref
deserialization
diff --git a/build/scripts/Test-WindowsTerminalPackage.ps1 b/build/scripts/Test-WindowsTerminalPackage.ps1
index 23da009c63f..5958a69f8b5 100644
--- a/build/scripts/Test-WindowsTerminalPackage.ps1
+++ b/build/scripts/Test-WindowsTerminalPackage.ps1
@@ -68,6 +68,27 @@ Try {
}
}
+ $dependencies = $Manifest.Package.Dependencies.PackageDependency.Name
+ $depsHasVclibsDesktop = ("Microsoft.VCLibs.140.00.UWPDesktop" -in $dependencies) -or ("Microsoft.VCLibs.140.00.Debug.UWPDesktop" -in $dependencies)
+ $depsHasVcLibsAppX = ("Microsoft.VCLibs.140.00" -in $dependencies) -or ("Microsoft.VCLibs.140.00.Debug" -in $dependencies)
+ $filesHasVclibsDesktop = ($null -ne (Get-Item "$AppxPackageRootPath\vcruntime140.dll" -EA:Ignore)) -or ($null -ne (Get-Item "$AppxPackageRootPath\vcruntime140d.dll" -EA:Ignore))
+ $filesHasVclibsAppX = ($null -ne (Get-Item "$AppxPackageRootPath\vcruntime140_app.dll" -EA:Ignore)) -or ($null -ne (Get-Item "$AppxPackageRootPath\vcruntime140d_app.dll" -EA:Ignore))
+
+ If ($depsHasVclibsDesktop -Eq $filesHasVclibsDesktop) {
+ $eitherBoth = if ($depsHasVclibsDesktop) { "both" } else { "neither" }
+ $neitherNor = if ($depsHasVclibsDesktop) { "and" } else { "nor" }
+ Throw "Package has $eitherBoth Dependency $neitherNor Integrated Desktop VCLibs"
+ }
+
+ If ($depsHasVclibsAppx -Eq $filesHasVclibsAppx) {
+ if ($depsHasVclibsAppx) {
+ # We've shipped like this forever, so downgrade to warning.
+ Write-Warning "Package has both Dependency and Integrated AppX VCLibs"
+ } else {
+ Throw "Package has neither Dependency nor Integrated AppX VCLibs"
+ }
+ }
+
### Check that we have an App.xbf (which is a proxy for our resources having been merged)
$resourceXpath = '/PriInfo/ResourceMap/ResourceMapSubtree[@name="Files"]/NamedResource[@name="App.xbf"]'
$AppXbf = $PRIFile.SelectSingleNode($resourceXpath)
diff --git a/src/cascadia/CascadiaPackage/CascadiaPackage.wapproj b/src/cascadia/CascadiaPackage/CascadiaPackage.wapproj
index 97a6d26fb2a..69cb812cf3e 100644
--- a/src/cascadia/CascadiaPackage/CascadiaPackage.wapproj
+++ b/src/cascadia/CascadiaPackage/CascadiaPackage.wapproj
@@ -106,6 +106,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/cascadia/WindowsTerminal/WindowsTerminal.vcxproj b/src/cascadia/WindowsTerminal/WindowsTerminal.vcxproj
index 475e19cabe9..dd24b6c3738 100644
--- a/src/cascadia/WindowsTerminal/WindowsTerminal.vcxproj
+++ b/src/cascadia/WindowsTerminal/WindowsTerminal.vcxproj
@@ -115,6 +115,21 @@
+
+
+ x86
+ $(Platform)
+
+
+
+
+ <_OpenConsoleVCLibToCopy Include="$(VCToolsRedistInstallDir)\$(ReasonablePlatform)\Microsoft.VC142.CRT\*.dll">
+ %(Filename)%(Extension)
+
+
+
+
+
+
+ $(ProjectName)
+ BuiltProjectOutputGroup
+
+
-
\ No newline at end of file
+