Volta: Windows: system error if VCRUNTIME140.dll is not previously installed

Created on 30 Oct 2019  路  5Comments  路  Source: volta-cli/volta

Steps to reproduce

  1. Start a new instance of Windows Sandbox, execute the following in the Sandbox.
  2. Install volta 0.6.4 via the msi
  3. Open Command Prompt, execute volta -v

Expected Result

volta writes 0.6.4

Actual Result

We get a System Error from volta.exe:

The code execution cannot proceed because VCRUNTIME140.dll was not found. Reinstalling the program may fix this problem.

_Note: volta -v in Powershell fails silently_

Impact

Volta won't run in this configuration.

Workaround

Download and install Microsoft Visual C++ 2015 Redistributable, then try again.

Most helpful comment

Not sure about the PowerShell silently failing part, I don't know that there's much we can do about that, however my thought was exactly what @pjking07 just linked: Including the dependency in the installer itself. Thanks for linking those! I'll read through because I'm far from an expert in installers either 馃憤

All 5 comments

Thanks for the report! @charlespierce thoughts on the mechanics for tackling this? Should it just be more docs and making sure that PS does the right thing so it doesn't fail silently here?

I have not modified installers in a _long_ time, but I would expect the redistributable to be included in (or downloaded by) the installer. Cf. WIX How To: Install the Visual C++ Redistributable with your installer.

Notably, Microsoft notes some cautions when considering merge modules. Cf. Redistributing Components By Using Merge Modules.

Not sure about the PowerShell silently failing part, I don't know that there's much we can do about that, however my thought was exactly what @pjking07 just linked: Including the dependency in the installer itself. Thanks for linking those! I'll read through because I'm far from an expert in installers either 馃憤

@pjking07 I don't currently have a development machine with Windows 10 Pro to use the Windows Sandbox, so would you be willing to test the changes with the following installer (which includes the Visual C++ runtime Merge Module)?

volta-0.6.5-x86_64.msi.zip

If that works, then I'll create a PR so all future installers will have the merge module included. Thanks!

That worked perfectly on Windows Sandbox :shipit:

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ef4 picture ef4  路  5Comments

timsuchanek picture timsuchanek  路  4Comments

rwjblue picture rwjblue  路  3Comments

stefanpenner picture stefanpenner  路  6Comments

mikrostew picture mikrostew  路  3Comments