diff --git a/CI/windows-10-x64-vc14.29.cmake b/CI/windows-10-x64-vc14.29.cmake
index 2c902ec86cc128701a519df6b770e210f9061a17..43e49b5b516b18b77caa041401293131ff4ee5dd 100644
--- a/CI/windows-10-x64-vc14.29.cmake
+++ b/CI/windows-10-x64-vc14.29.cmake
@@ -37,3 +37,12 @@ OTB_USE_OPENCV:BOOL=ON
 OTB_USE_OPENMP:BOOL=OFF
 OTB_USE_SHARK:BOOL=ON
 ")
+
+# As windows have a dumb dynamic linkage system, we need to use
+# the XDK_INSTALL_PATH option to ensure dlls are copied from xdk to otb bin
+# folder 
+if(XDK_INSTALL_PATH)
+  set(site_option
+"XDK_INSTALL_PATH=${XDK_INSTALL_PATH}
+${site_option}")
+endif()
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7f9209fc49ab2936d6d6cd9a6004b8924192bbe0..473055c2bb94bb81eb5751b2cf923c217388806d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -394,12 +394,6 @@ if(XDK_INSTALL_PATH)
             DESTINATION .
             USE_SOURCE_PERMISSIONS
             COMPONENT Core)
-    if (WIN32)
-      install(DIRECTORY ${XDK_INSTALL_PATH}/bin
-              DESTINATION ${OTB_INSTALL_PREFIX}
-              USE_SOURCE_PERMISSIONS
-              COMPONENT Core)
-    endif()
     install(DIRECTORY ${XDK_INSTALL_PATH}/cmake
             DESTINATION ./lib
             USE_SOURCE_PERMISSIONS