[Installer] Gracefully terminate PowerToys process before updating do… (#20430)

* [Installer] Gracefully terminate PowerToys process before updating dotnet
This commit is contained in:
Andrey Nekrasov 2022-09-09 18:11:33 +03:00 committed by GitHub
parent 7b0f97597d
commit f19ba94a2c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 4 deletions

View File

@ -112,7 +112,6 @@ atlstr
Attribs Attribs
attrs attrs
Atyrau Atyrau
augustkarlstedt
aumid aumid
Aut Aut
Authenticode Authenticode
@ -144,7 +143,6 @@ bck
Belarus Belarus
betadele betadele
betsegaw betsegaw
bezgumption
BGR BGR
bgra bgra
bhid bhid
@ -540,6 +538,7 @@ eltociear
emmintrin emmintrin
Emoji Emoji
emptyrecyclebin emptyrecyclebin
ENABLEDELAYEDEXPANSION
ENABLEDPOPUP ENABLEDPOPUP
endforeach endforeach
endian endian
@ -560,6 +559,7 @@ ERASEBKGND
EREOF EREOF
EResize EResize
ERole ERole
ERRORLEVEL
ERRORMESSAGE ERRORMESSAGE
ERRORTITLE ERRORTITLE
ESettings ESettings
@ -1352,6 +1352,7 @@ NDEBUG
Ndombe Ndombe
ndp ndp
NEEDDISPATCH NEEDDISPATCH
NEQ
NESW NESW
netcore netcore
netcoreapp netcoreapp
@ -1470,7 +1471,6 @@ openxmlformats
OPTIMIZEFORINVOKE OPTIMIZEFORINVOKE
ORAW ORAW
ORPHANEDDIALOGTITLE ORPHANEDDIALOGTITLE
osfanbuff
oss oss
ostr ostr
ostream ostream
@ -1752,7 +1752,6 @@ RNumber
roadmap roadmap
robmensching robmensching
Roboto Roboto
rohanrdy
rooler rooler
roslyn roslyn
Rothera Rothera

View File

@ -72,6 +72,16 @@
<util:RegistrySearch Variable="DetectedVCRedistVersion" Root="HKLM" Key="Software\Microsoft\VisualStudio\14.0\VC\Runtimes\$(var.PowerToysPlatform)" Value="Minor" Result="value" Format="raw" /> <util:RegistrySearch Variable="DetectedVCRedistVersion" Root="HKLM" Key="Software\Microsoft\VisualStudio\14.0\VC\Runtimes\$(var.PowerToysPlatform)" Value="Minor" Result="value" Format="raw" />
<Chain> <Chain>
<ExePackage
Name="terminate_powertoys.cmd"
Cache="no"
Compressed="yes"
Id="TerminatePowerToys"
SourceFile="terminate_powertoys.cmd"
Permanent="yes"
PerMachine="yes"
Vital="no">
</ExePackage>
<ExePackage <ExePackage
Name="windowsdesktop-runtime-6.0.8-win-$(var.PowerToysPlatform).exe" Name="windowsdesktop-runtime-6.0.8-win-$(var.PowerToysPlatform).exe"
Compressed="no" Compressed="no"

View File

@ -0,0 +1,12 @@
@echo off
setlocal ENABLEDELAYEDEXPANSION
@REM We loop here until taskkill cannot find a PowerToys process. We can't use /F flag, because it
@REM doesn't give application an opportunity to cleanup. Thus we send WM_CLOSE which is being caught
@REM by multiple windows running a msg loop in PowerToys.exe process, which we close one by one.
for /l %%x in (1, 1, 100) do (
taskkill /IM PowerToys.exe 1>NUL 2>NUL
if !ERRORLEVEL! NEQ 0 goto quit
)
:quit