summaryrefslogtreecommitdiff
path: root/scp2
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2019-05-22 19:17:44 +0300
committerAron Budea <aron.budea@collabora.com>2019-06-04 21:58:30 +0200
commit7f0ef81cec7e4f64c7fbfce04372d84871244b11 (patch)
treedfcfba01df16fcfeb44a20baa68632309f72f5b4 /scp2
parent17fdf034c144c64d6a9ebd3d8ace6096c9867944 (diff)
Register spsupp*.dll during installation
This registers SharePoint integration libraries using regsvr.exe. Both 32-bit and 64-bit libraries are registered; registration of SharePoint.OpenDocuments is unconditional (subject to ActiveX feature install state), substituting respective MSO component. This only works for 32-bit MSI, because in case of 64-bit MSI, only 64-bit SharePoint DLL is included; this makes the library ~useless in case of 64-bit MSI, because IE needs 32-bit component absent there. Proper solution will be created for master branch. Change-Id: Ic5bf9e7090acfaa17d47cb72b9ebfd483242f656 Reviewed-on: https://gerrit.libreoffice.org/72801 Reviewed-by: Aron Budea <aron.budea@collabora.com> Tested-by: Aron Budea <aron.budea@collabora.com>
Diffstat (limited to 'scp2')
-rw-r--r--scp2/source/calc/module_calc.scp2
-rw-r--r--scp2/source/draw/module_draw.scp2
-rw-r--r--scp2/source/impress/module_impress.scp2
-rw-r--r--scp2/source/ooo/windowscustomaction_ooo.scp41
-rw-r--r--scp2/source/writer/module_writer.scp2
5 files changed, 45 insertions, 4 deletions
diff --git a/scp2/source/calc/module_calc.scp b/scp2/source/calc/module_calc.scp
index dd31007bb5ca..0f83dec54352 100644
--- a/scp2/source/calc/module_calc.scp
+++ b/scp2/source/calc/module_calc.scp
@@ -74,7 +74,7 @@ Module gid_Module_Prg_Calc_MSO_Reg
Name = "gid_Module_Prg_Calc_MSO_Reg";
Description = "gid_Module_Prg_Calc_MSO_Reg";
Styles = (HIDDEN_ROOT);
- Default = YES;
+ Default = NO;
End
Module gid_Module_Prg_Calc_Other_Reg
diff --git a/scp2/source/draw/module_draw.scp b/scp2/source/draw/module_draw.scp
index 87375797e1c6..c4c835b4ccc1 100644
--- a/scp2/source/draw/module_draw.scp
+++ b/scp2/source/draw/module_draw.scp
@@ -64,7 +64,7 @@ Module gid_Module_Prg_Draw_MSO_Reg
Name = "gid_Module_Prg_Draw_MSO_Reg";
Description = "gid_Module_Prg_Draw_MSO_Reg";
Styles = (HIDDEN_ROOT);
- Default = YES;
+ Default = NO;
End
Module gid_Module_Prg_Draw_Other_Reg
diff --git a/scp2/source/impress/module_impress.scp b/scp2/source/impress/module_impress.scp
index ca335d6973d9..42d62dd9e7c6 100644
--- a/scp2/source/impress/module_impress.scp
+++ b/scp2/source/impress/module_impress.scp
@@ -66,7 +66,7 @@ Module gid_Module_Prg_Impress_MSO_Reg
Name = "gid_Module_Prg_Impress_MSO_Reg";
Description = "gid_Module_Prg_Impress_MSO_Reg";
Styles = (HIDDEN_ROOT);
- Default = YES;
+ Default = NO;
End
Module gid_Module_Prg_Impress_Other_Reg
diff --git a/scp2/source/ooo/windowscustomaction_ooo.scp b/scp2/source/ooo/windowscustomaction_ooo.scp
index bc7201b9b2b4..f98296ca48dc 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[_x64].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/writer/module_writer.scp b/scp2/source/writer/module_writer.scp
index 9a0ed77ac4b8..ded807099d63 100644
--- a/scp2/source/writer/module_writer.scp
+++ b/scp2/source/writer/module_writer.scp
@@ -65,7 +65,7 @@ Module gid_Module_Prg_Wrt_MSO_Reg
Name = "gid_Module_Prg_Wrt_MSO_Reg";
Description = "gid_Module_Prg_Wrt_MSO_Reg";
Styles = (HIDDEN_ROOT);
- Default = YES;
+ Default = NO;
End
Module gid_Module_Prg_Wrt_Other_Reg