summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndras Timar <atimar@suse.com>2012-06-05 16:57:53 +0200
committerAndras Timar <atimar@suse.com>2012-06-05 17:09:43 +0200
commit8783ead70cc2bc2a83bf473b0dfb51f3ee10b6da (patch)
treed3292bdce34f14973e8fcdab80f8911bd467e467
parent0665c3e52b0b0053c3d622d3fa975d4234801bdd (diff)
fdo#43989 let unopkg.exe run with elevated privileges during install
... so it can do the pre-registration of bundled extensions in INSTALLLOCATION/share/prereg/bundle. The meaning of Type of custom action is the following: msidbCustomActionTypeDll + msidbCustomActionTypeBinaryData + msidbCustomActionTypeInScript + msidbCustomActionTypeNoImpersonate + msidbCustomActionTypeCommit = 3585 So it is a binary in a dll from the MSI itself, it runs deferred with system privileges and after commit, because msvcrt90.dll is available only after commit. The same type was chosen for the removing part, it works. Change-Id: I14c347b5cbc47789eb0484769a676703361c2193
-rw-r--r--scp2/source/ooo/windowscustomaction_ooo.scp10
1 files changed, 5 insertions, 5 deletions
diff --git a/scp2/source/ooo/windowscustomaction_ooo.scp b/scp2/source/ooo/windowscustomaction_ooo.scp
index 077cd6e5e214..2fdae2c2804d 100644
--- a/scp2/source/ooo/windowscustomaction_ooo.scp
+++ b/scp2/source/ooo/windowscustomaction_ooo.scp
@@ -178,21 +178,21 @@ End
WindowsCustomAction gid_Customaction_Register_Extensions
Name = "RegisterExtensions";
- Typ = "1";
+ Typ = "3585";
Source = "shlxtmsi.dll";
Target = "RegisterExtensions";
Inbinarytable = 1;
- Assignment1 = ("InstallExecuteSequence", "Not REMOVE=\"ALL\"", "behind_InstallFinalize");
- Assignment2 = ("AdminExecuteSequence", "Not REMOVE=\"ALL\"", "behind_InstallFinalize");
+ Assignment1 = ("InstallExecuteSequence", "Not REMOVE=\"ALL\"", "InstallFinalize");
+ Assignment2 = ("AdminExecuteSequence", "Not REMOVE=\"ALL\"", "InstallFinalize");
End
WindowsCustomAction gid_Customaction_Remove_Extensions
Name = "RemoveExtensions";
- Typ = "65";
+ Typ = "3585";
Source = "shlxtmsi.dll";
Target = "RemoveExtensions";
Inbinarytable = 1;
- Assignment1 = ("InstallExecuteSequence", "REMOVE=\"ALL\" And Not PATCH", "FileCost");
+ Assignment1 = ("InstallExecuteSequence", "REMOVE=\"ALL\" And Not PATCH", "InstallFinalize");
End
WindowsCustomAction gid_Customaction_Set_Admininstall