Reputation: 15
We are maintaining the localized release of a major CAD-program (>500 DLLs) and create add-in applications to expand its functionality (added as DLLs).
The main application installs Visual C++ Redistributables 2005 (x86), 2010 (x64), 2012 (x64) and 2015 (x64).
If we install (because of our Visual Studio version) the new Visual C++ redistributable 2015-2019 (x64), all applications work perfectly.
After the test, we now manually rolled back the installation to the original state by de-installing the runtime 2015-2019 (x64) and re-installing the original runtime 2015 (x64).
The main application does no longer start as it misses VCRuntime140_1.dll. However, it should look for VCRuntime140.dll again.
Apparently, Microsoft redistributable installation/de-installation is responsible for this error.
Any known Workaround or Solution? We greatly would appreciate your help and hints.
Upvotes: 1
Views: 10063
Reputation: 71
copy:
msvcp140.dll
vcruntime140.dll
vcruntime140_1.dll
Place the DLL files in the directory next to the executable and the other DLLs, and bundle them together in a zip file. The resulting structure looks something like this:
Release │ flutter_windows.dll │ msvcp140.dll │ myapp.exe │ vcruntime140.dll │ vcruntime140_1.dll │ └───data │ │ app.so │ │ icudtl.dat
...
Upvotes: 0
Reputation: 321
Just ran into this as well. The issue is with what happens during uninstall of the 2019 runtime:
The issue is that the VCRuntime140.dll that remains is the version of that file that was installed with the 2019 runtime. The 2015 version is not restored. The result is that this DLL expects to be able to call functions found in VCRuntime140_1.dll, but that file is no longer present.
To work around this, we are opting not to rollback the runtime version from 2019 to 2015, as the 2019 runtime will support applications built for 2015 without issue (and in fact does so already if another application requiring the 2019 runtime were to be installed on the machine, independent of your add-in)
Upvotes: 4