diff --git a/CMakeLists.txt b/CMakeLists.txt
index a196dbba5ce67..4eacae216ea5b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -21,8 +21,13 @@ set(BIN_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
include(${CMAKE_SOURCE_DIR}/NEXTCLOUD.cmake)
+set ( NCCONTEXTMENU_SHELLEXT_WINDOW_CLASS_NAME "${APPLICATION_SHORTNAME}_Shxt_CntMenuHndlr_WndClass" )
+set ( NCOVERLAYS_SHELLEXT_WINDOW_CLASS_NAME "${APPLICATION_SHORTNAME}_Shxt_Ovs_WndClass" )
+
# CfAPI Shell Extensions
set( CFAPI_SHELL_EXTENSIONS_LIB_NAME CfApiShellExtensions )
+
+set ( CFAPI_SHELLEXT_WINDOW_CLASS_NAME "${APPLICATION_SHORTNAME}_${CFAPI_SHELL_EXTENSIONS_LIB_NAME}_WndClass" )
set( CFAPI_SHELLEXT_APPID_REG "{E314A650-DCA4-416E-974E-18EA37C213EA}")
set( CFAPI_SHELLEXT_APPID_DISPLAY_NAME "${APPLICATION_NAME} CfApi Shell Extensions" )
diff --git a/admin/win/msi/Nextcloud.wxs b/admin/win/msi/Nextcloud.wxs
index 374241dae04fb..4719d85dc0ac4 100644
--- a/admin/win/msi/Nextcloud.wxs
+++ b/admin/win/msi/Nextcloud.wxs
@@ -60,18 +60,33 @@
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
NSIS_UNINSTALLEXE AND NOT Installed
@@ -80,9 +95,8 @@
(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")
-
-
- (SCHEDULE_REBOOT=1) OR NOT (UILevel=2)
+
+ (SCHEDULE_REBOOT=1) OR ((NOT (UILevel=2)) AND (NOT IS_PREV_VERSION_SHELL_EXT_CLOSE_SUPPORTED))
@@ -184,6 +198,11 @@
+
+
+
+
+
@@ -213,6 +232,7 @@
+
diff --git a/admin/win/msi/OEM.wxi.in b/admin/win/msi/OEM.wxi.in
index e35451eef2904..ae8f964e28f55 100644
--- a/admin/win/msi/OEM.wxi.in
+++ b/admin/win/msi/OEM.wxi.in
@@ -31,6 +31,10 @@
+
+
+
+