summaryrefslogtreecommitdiff
path: root/scp2
diff options
context:
space:
mode:
Diffstat (limited to 'scp2')
-rw-r--r--scp2/source/ooo/windowscustomaction_ooo.scp41
-rw-r--r--scp2/source/spsupp/module_spsupp.scp18
2 files changed, 59 insertions, 0 deletions
diff --git a/scp2/source/ooo/windowscustomaction_ooo.scp b/scp2/source/ooo/windowscustomaction_ooo.scp
index bc7201b9b2b4..116b437b1ed3 100644
--- a/scp2/source/ooo/windowscustomaction_ooo.scp
+++ b/scp2/source/ooo/windowscustomaction_ooo.scp
@@ -221,3 +221,44 @@ WindowsCustomAction gid_Customaction_RegisterSomeExtensions
End
#endif /* HAVE_WINDOWS_SDK */
+
+/* Deferred not-impersonated actions that will call regsvr32 to (un)register DLLs.
+ * Custom action type 1 (msidbCustomActionTypeDll + msidbCustomActionTypeBinaryData)
+ * + 64 (msidbCustomActionTypeContinue) + 1024 (msidbCustomActionTypeInScript)
+ * + 2048 (msidbCustomActionTypeNoImpersonate).
+ * Since deferred actions don't have access to current DB, the actions depend on
+ * immediate-executed action prep_reg_unreg_dlls (see below) that precedes it, and
+ * sets this action's CustomActionData property.
+ */
+
+WindowsCustomAction gid_Customaction_reg_dlls
+ Name = "reg_dlls";
+ Typ = "3137";
+ Source = "reg_dlls.dll";
+ Target = "RegDLLs";
+ Inbinarytable = 1;
+ Assignment1 = ("InstallExecuteSequence", "reg_dlls", "InstallFinalize");
+End
+
+WindowsCustomAction gid_Customaction_unreg_dlls
+ Name = "unreg_dlls";
+ Typ = "3137";
+ Source = "reg_dlls.dll";
+ Target = "UnregDLLs";
+ Inbinarytable = 1;
+ Assignment1 = ("InstallExecuteSequence", "unreg_dlls", "UnpublishComponents");
+End
+
+/* Immediately-executed action that adds registration command lines for spsupp_x*.dll
+ * to "[un]reg_dlls" properties.
+ * Custom action type 1 (msidbCustomActionTypeDll + msidbCustomActionTypeBinaryData)
+ * + 64 (msidbCustomActionTypeContinue).
+ */
+WindowsCustomAction gid_Customaction_prep_reg_dlls
+ Name = "prep_reg_unreg_dlls";
+ Typ = "65";
+ Source = "reg_dlls.dll";
+ Target = "PrepRegUnregDLLs";
+ Inbinarytable = 1;
+ Assignment1 = ("InstallExecuteSequence", "", "behind_CostFinalize");
+End
diff --git a/scp2/source/spsupp/module_spsupp.scp b/scp2/source/spsupp/module_spsupp.scp
index 39c547a5fa5c..b97a84a699d5 100644
--- a/scp2/source/spsupp/module_spsupp.scp
+++ b/scp2/source/spsupp/module_spsupp.scp
@@ -22,5 +22,23 @@ Module gid_Module_Optional_SharePointSupport
Files = (auto_spsuppfiles_ALL);
End
+/*
+ * This is an *empty* feature disabled by default, that controls custom action registering
+ * SharePoint.OpenDocuments class, which replaces registration of that class from MSO.
+ * It is disabled to allow co-existing with MS Office. To install, a transform must be
+ * used that would set its level to non-0 value, or a command line like
+ *
+ * msiexec.exe /i path-to-msi ADDLOCAL=gm_SharePointSupport_SubstMSO
+ */
+Module gid_Module_SharePointSupport_SubstMSO
+ ParentID = gid_Module_Optional_SharePointSupport;
+ Name = "gid_Module_SharePointSupport_SubstMSO";
+ Description = "Registration of SharePoint.OpenDocuments class";
+ Sortkey = "1305";
+ Default = NO;
+ Independent = YES;
+ Styles = (HIDDEN_ROOT);
+End
+
#endif