Commit 7850541a authored by Martin v. Löwis's avatar Martin v. Löwis

Issue #20641: Run custom actions with the NoImpersonate flag to support UAC.

parent 9d4c5f46
...@@ -71,6 +71,9 @@ Library ...@@ -71,6 +71,9 @@ Library
Build Build
----- -----
- Issue #20641: Run MSI custom actions (pip installation, pyc compilation)
with the NoImpersonate flag, to support elevated execution (UAC).
- Issue #20221: Removed conflicting (or circular) hypot definition when - Issue #20221: Removed conflicting (or circular) hypot definition when
compiled with VS 2010 or above. Initial patch by Tabrez Mohammed. compiled with VS 2010 or above. Initial patch by Tabrez Mohammed.
......
...@@ -435,12 +435,13 @@ def add_ui(db): ...@@ -435,12 +435,13 @@ def add_ui(db):
("SetLauncherDirToWindows", 307, "LAUNCHERDIR", "[WindowsFolder]"), ("SetLauncherDirToWindows", 307, "LAUNCHERDIR", "[WindowsFolder]"),
# msidbCustomActionTypeExe + msidbCustomActionTypeSourceFile # msidbCustomActionTypeExe + msidbCustomActionTypeSourceFile
# See "Custom Action Type 18" # See "Custom Action Type 18"
("CompilePyc", 18, "python.exe", compileargs),
("CompilePyo", 18, "python.exe", "-O "+compileargs),
("CompileGrammar", 18, "python.exe", lib2to3args),
# msidbCustomActionTypeInScript (1024); run during actual installation # msidbCustomActionTypeInScript (1024); run during actual installation
("UpdatePip", 18+1024, "python.exe", updatepipargs), # msidbCustomActionTypeNoImpersonate (2048); run action in system account, not user account
("RemovePip", 18, "python.exe", removepipargs), ("CompilePyc", 18+1024+2048, "python.exe", compileargs),
("CompilePyo", 18+1024+2048, "python.exe", "-O "+compileargs),
("CompileGrammar", 18+1024+2048, "python.exe", lib2to3args),
("UpdatePip", 18+1024+2048, "python.exe", updatepipargs),
("RemovePip", 18+1024+2048, "python.exe", removepipargs),
]) ])
# UI Sequences, see "InstallUISequence Table", "Using a Sequence Table" # UI Sequences, see "InstallUISequence Table", "Using a Sequence Table"
...@@ -483,17 +484,14 @@ def add_ui(db): ...@@ -483,17 +484,14 @@ def add_ui(db):
# remove pip when state changes to INSTALLSTATE_ABSENT # remove pip when state changes to INSTALLSTATE_ABSENT
# run before RemoveFiles # run before RemoveFiles
("RemovePip", "&pip_feature=2", 3499), ("RemovePip", "&pip_feature=2", 3499),
("CompilePyc", "COMPILEALL", 6800), ("CompilePyc", "COMPILEALL", 4002),
("CompilePyo", "COMPILEALL", 6801), ("CompilePyo", "COMPILEALL", 4003),
("CompileGrammar", "COMPILEALL", 6802), ("CompileGrammar", "COMPILEALL", 4004),
]) ])
add_data(db, "AdminExecuteSequence", add_data(db, "AdminExecuteSequence",
[("InitialTargetDir", 'TARGETDIR=""', 750), [("InitialTargetDir", 'TARGETDIR=""', 750),
("SetDLLDirToTarget", 'DLLDIR=""', 751), ("SetDLLDirToTarget", 'DLLDIR=""', 751),
("SetLauncherDirToTarget", 'LAUNCHERDIR=""', 752), ("SetLauncherDirToTarget", 'LAUNCHERDIR=""', 752),
("CompilePyc", "COMPILEALL", 6800),
("CompilePyo", "COMPILEALL", 6801),
("CompileGrammar", "COMPILEALL", 6802),
]) ])
##################################################################### #####################################################################
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment