Skip to content

Commit ebb1879

Browse files
committed
Merge shell extension installer to main installer
IB-7980 Signed-off-by: Raul Metsma <[email protected]>
1 parent ccb29a5 commit ebb1879

18 files changed

+53
-258
lines changed

.github/workflows/build.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,6 @@ jobs:
199199
-DCMAKE_TOOLCHAIN_FILE=${{ env.RUNVCPKG_VCPKG_ROOT }}/scripts/buildsystems/vcpkg.cmake `
200200
"-DLibDigiDocpp_ROOT=libs/PFiles64/libdigidocpp"
201201
cmake --build build --target msi
202-
cmake --build build --target msishellext
203202
cmake --build build --target appx
204203
- name: Archive artifacts
205204
uses: actions/upload-artifact@v4

client/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,11 +233,12 @@ elseif(WIN32)
233233
-d libs_path=${LIBS_PATH}
234234
-d client_path=$<TARGET_FILE:${PROJECT_NAME}>
235235
-d qt_suffix=$<$<CONFIG:Debug>:d>
236+
-d ShellExt=$<TARGET_FILE:EsteidShellExtension>
236237
${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.wxs
237238
${CMAKE_SOURCE_DIR}/cmake/modules/WelcomeDlg.wxs
238239
${CMAKE_SOURCE_DIR}/cmake/modules/WixUI_Minimal.wxs
239240
)
240-
add_custom_target(msi DEPENDS ${PROJECT_NAME}
241+
add_custom_target(msi DEPENDS ${PROJECT_NAME} EsteidShellExtension
241242
COMMAND ${WIX_CMD} -o "${MSI_FILE}.msi"
242243
#Build MSI with QT
243244
COMMAND ${WIX_CMD} -d qt_path=${qtCore_install_prefix} -o "${MSI_FILE}.qt.msi"

extensions/windows/CMakeLists.txt

Lines changed: 10 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,85 +1,44 @@
1-
cmake_minimum_required(VERSION 3.16)
2-
project(digidocshellextension VERSION 3.13.9)
3-
4-
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
5-
set(CMAKE_INCLUDE_CURRENT_DIR ON)
6-
7-
include( VersionInfo )
1+
project(EsteidShellExtension VERSION 3.13.9)
2+
include(VersionInfo)
83

94
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
105
set(MIDL_TARGET "x64")
11-
set(PLATFORM "x64")
126
else()
137
set(MIDL_TARGET "win32")
14-
set(PLATFORM "x86")
158
endif()
169

1710
add_custom_command(
1811
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/EsteidShellExtension_i.h
1912
${CMAKE_CURRENT_BINARY_DIR}/EsteidShellExtension_i.c
20-
${CMAKE_CURRENT_BINARY_DIR}/EsteidShellExtension_p.c
2113
COMMAND Midl.Exe ${CMAKE_CURRENT_SOURCE_DIR}/EsteidShellExtension.idl
22-
/nologo /no_robust /char signed /Oicf /env ${MIDL_TARGET}
23-
/I ${CMAKE_CURRENT_SOURCE_DIR}
14+
/nologo /target NT100 /char signed /env ${MIDL_TARGET}
2415
/tlb EsteidShellExtension.tlb
2516
/h EsteidShellExtension_i.h
26-
/iid EsteidShellExtension_i.c
27-
/proxy EsteidShellExtension_p.c 2> nul
17+
/iid EsteidShellExtension_i.c 2> nul
2818
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
2919
VERBATIM
3020
)
3121

32-
add_library(EsteidShellExtension SHARED
22+
add_library(${PROJECT_NAME} SHARED
3323
${CMAKE_CURRENT_BINARY_DIR}/EsteidShellExtension_i.c
3424
dllmain.cpp
35-
EsteidShellExtension.cpp
3625
EsteidShellExtension.def
3726
EsteidShlExt.cpp
38-
stdafx.cpp
3927
EsteidShellExtension.rc
40-
EsteidShellExtension.rgs
41-
EsteidShlExt_x86.rgs
42-
EsteidShlExt_x64.rgs
4328
)
44-
set_target_properties(EsteidShellExtension PROPERTIES
29+
set_target_properties(${PROJECT_NAME} PROPERTIES
4530
MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>"
46-
COMPILE_DEFINITIONS "_UNICODE;UNICODE;_MERGE_PROXYSTUB;_WINDLL"
47-
COMPILE_OPTIONS "/guard:cf"
31+
COMPILE_DEFINITIONS "_UNICODE;UNICODE;_WINDLL"
4832
INCLUDE_DIRECTORIES ${CMAKE_CURRENT_BINARY_DIR}
49-
INTERPROCEDURAL_OPTIMIZATION YES
33+
COMPILE_OPTIONS "/guard:cf"
5034
LINK_OPTIONS "/guard:cf"
5135
LINK_LIBRARIES "uxtheme.lib"
5236
SKIP_AUTOMOC ON
5337
)
5438

55-
add_custom_target(msishellext DEPENDS EsteidShellExtension
56-
COMMAND wix.exe build -nologo
57-
-arch ${PLATFORM}
58-
-d MSI_VERSION=${VERSION}
59-
-d ShellExt=$<TARGET_FILE:EsteidShellExtension>
60-
${CMAKE_CURRENT_SOURCE_DIR}/EsteidShellExtension.wxs
61-
${CMAKE_MODULE_PATH}/WelcomeDlg.wxs
62-
${CMAKE_MODULE_PATH}/WixUI_Minimal.wxs
63-
-ext WixToolset.UI.wixext
64-
-bv WixUIDialogBmp=${CMAKE_MODULE_PATH}/dlgbmp.bmp
65-
-bv WixUIBannerBmp=${CMAKE_MODULE_PATH}/banner.bmp
66-
-o Digidoc_ShellExt-${VERSION}$ENV{VER_SUFFIX}.${PLATFORM}.msi
67-
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
68-
)
69-
7039
if(SIGNCERT)
71-
if(CROSSSIGNCERT)
72-
target_link_options(EsteidShellExtension PRIVATE "/INTEGRITYCHECK")
73-
endif()
74-
add_custom_command(TARGET EsteidShellExtension POST_BUILD
75-
COMMAND signtool.exe sign /a /v /s MY /n "${SIGNCERT}" /fd SHA256 /du http://installer.id.ee
76-
"$<$<BOOL:${CROSSSIGNCERT}>:/ph;/ac;${CROSSSIGNCERT}>"
77-
/tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td SHA256 $<TARGET_FILE:EsteidShellExtension>
78-
COMMAND_EXPAND_LISTS
79-
)
80-
add_custom_command(TARGET msishellext POST_BUILD
40+
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
8141
COMMAND signtool.exe sign /a /v /s MY /n "${SIGNCERT}" /fd SHA256 /du http://installer.id.ee
82-
/tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td SHA256
83-
"${CMAKE_BINARY_DIR}/Digidoc_ShellExt-${VERSION}$ENV{VER_SUFFIX}.${PLATFORM}.msi"
42+
/tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td SHA256 $<TARGET_FILE:${PROJECT_NAME}>
8443
)
8544
endif()

extensions/windows/EsteidShellExtension.cpp

Lines changed: 0 additions & 59 deletions
This file was deleted.

extensions/windows/EsteidShellExtension.def

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,3 @@ LIBRARY "EsteidShellExtension.DLL"
55
EXPORTS
66
DllCanUnloadNow PRIVATE
77
DllGetClassObject PRIVATE
8-
DllRegisterServer PRIVATE
9-
DllUnregisterServer PRIVATE
10-
DllInstall PRIVATE

extensions/windows/EsteidShellExtension.idl

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,15 @@
44
// This file will be processed by the MIDL tool to
55
// produce the type library (EsteidShellExtension.tlb) and marshalling code.
66

7-
import "oaidl.idl";
8-
import "ocidl.idl";
7+
import "shobjidl.idl";
98

10-
[
11-
object,
12-
uuid(8BD7CE13-2DB7-4268-8201-CED0626CB94E),
13-
dual,
14-
nonextensible,
15-
helpstring("IEsteidShlExt Interface"),
16-
pointer_default(unique)
17-
]
18-
interface IEsteidShlExt : IDispatch{
19-
};
209
[
2110
uuid(F4748FA8-B59E-43FA-9D53-2380EB141AED),
2211
version(1.0),
2312
helpstring("EsteidShellExtension 1.0 Type Library")
2413
]
2514
library EsteidShellExtensionLib
2615
{
27-
importlib("stdole2.tlb");
2816
[
2917
#ifdef _WIN64
3018
uuid(5606A547-759D-43DA-AEEB-D3BF1D1E816D),
@@ -35,6 +23,7 @@ library EsteidShellExtensionLib
3523
]
3624
coclass EsteidShlExt
3725
{
38-
[default] interface IEsteidShlExt;
26+
[default] interface IShellExtInit;
27+
interface IContextMenu;
3928
};
4029
};

extensions/windows/EsteidShellExtension.rc

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -91,14 +91,6 @@ BEGIN
9191
END
9292

9393

94-
/////////////////////////////////////////////////////////////////////////////
95-
//
96-
// REGISTRY
97-
//
98-
99-
IDR_ESTEIDEXT REGISTRY "EsteidShellExtension.rgs"
100-
101-
10294
/////////////////////////////////////////////////////////////////////////////
10395
//
10496
// String Table
@@ -120,17 +112,6 @@ END
120112
LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
121113
#pragma code_page(1257)
122114

123-
/////////////////////////////////////////////////////////////////////////////
124-
//
125-
// REGISTRY
126-
//
127-
128-
#ifdef _WIN64
129-
IDR_ESTEIDSHLEXT REGISTRY "EsteidShlExt_x64.rgs"
130-
#else
131-
IDR_ESTEIDSHLEXT REGISTRY "EsteidShlExt_x86.rgs"
132-
#endif
133-
134115
/////////////////////////////////////////////////////////////////////////////
135116
//
136117
// Bitmap

extensions/windows/EsteidShellExtension.rgs

Lines changed: 0 additions & 11 deletions
This file was deleted.

extensions/windows/EsteidShellExtension.wxs

Lines changed: 0 additions & 45 deletions
This file was deleted.

extensions/windows/EsteidShlExt.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
#include "stdafx.h"
55
#include "EsteidShlExt.h"
66

7-
#include <uxtheme.h>
8-
97
typedef DWORD ARGB;
108

119
bool HasAlpha(ARGB *pargb, SIZE &sizeImage, int cxRow)

0 commit comments

Comments
 (0)