# Windows preview build delayed & Visual Studio 2022 updates

**URL:** <https://discourse.slicer.org/t/windows-preview-build-delayed-visual-studio-2022-updates/29045>\
**Category:** Development\
**Tags:** maintenance\
**Created:** [April 21, 2023, 11:52am UTC](https://discourse.slicer.org/t/windows-preview-build-delayed-visual-studio-2022-updates/29045 "2023-04-21T11:52:06Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [April 21, 2023, 11:52am UTC](https://discourse.slicer.org/t/windows-preview-build-delayed-visual-studio-2022-updates/29045/1 "2023-04-21T11:52:06Z")

</div>

### Impact

Slicer `Preview` application and extension packages of 2023-04-21T03:00:00Z for Windows will be available later than expected.

### Update Details

#### Installed components for UWP/ARM64 development

To support the development of the `SlicerMixedReality` extension, we needed to install new Visual Studio 2022 workloads & components to support Universal Windows Platform (UWP) development targeting ARM64.

#### Updated C & CXX compilers

In the process, the version of the C & CXX compilers provided by Visual Studio 2022 changed and is summarized below:

| | MSVC compiler identification | Path |
| --- | --- | --- |
| Before | `19.30.30709.0` | `C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.30.30705/bin/Hostx64/x64/cl.exe` |
| After | `19.35.32217.1` | `C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x64/cl.exe` |

#### Impact on Slicer extension stable builds

To support building the `Stable` extension, the `SlicerConfig.make` file\[1\] was updated replacing the 4 occurrences of `14.30.30705` with `14.35.32215`.

This is required to ensure the updated compiler used to build the nightly `Stable` extensions matches the one hard-coded in `SlicerConfig.cmake`. Indeed, there is a consistency check implemented in `slicer_config_set_compiler_ep` defined and called from within `SlicerConfig`

_What about the ABI compatibility ?_

Since binaries are built with the v143 toolset, extensions build with the updated compiler will be compatible\[2\] with the stable release built with an older compiler but also targeting the same toolset.

#### The infamous `"Sorry, something went wrong"` VS2022 update error

When attempting to install new Visual Studio 2022 components (through ), it was failing with _Sorry, something went wrong_.

Inspecting the log file `%temp%\dd_installer_YYYYMMDDHHMMSS.log`, there were errors.

The steps are provided for future reference and where adapted from details provided by Philippe Debayle at [https://developercommunity.visualstudio.com/t/Unable-to-use-VSInstaller-because-it-sys/10323762#T-N10323790-N10323885](https://developercommunity.visualstudio.com/t/Unable-to-use-VSInstaller-because-it-sys/10323762#T-N10323790-N10323885)

1. To Fix the communication issue preventing developer news from being displayed:

2. Address the `Error 0x80070057: Failed to read instance xxxxxx" (where xxxx is the vs instance number)`

3. Run `setup.exe` as described in the `dd_installer_*.log` file by specifying the additional parameter `--channelUri C:\path\to\modifed\channelmanifest.json`

This allowed to move forward with the update process.

* * *

1. `C:\path\to\S\S-0-build\Slicer-build\SlicerConfig.make` 

2. [C++ binary compatibility 2015-2026 | Microsoft Learn](https://learn.microsoft.com/en-us/cpp/porting/binary-compat-2015-2017?view=msvc-170)
