What does the error "wrong version of run-time dll" mean? (VB5 / VB6)

1k Views Asked by At

The installer for my app runs several sub-programs which are written in a mix of VB5 and VB6. On one customer's computer, when running the installer, the error

"Wrong version of run-time DLL"

is shown.

poor quality "screenshot" of error

This is the first time this issue has ever come up (to my knowledge) for this legacy software.

What is the cause of this error?

1

There are 1 best solutions below

0
On

This error usually means there is an old version of MSVBVM50.DLL already installed on the computer or in the wrong location.

This might have occurred if an older software installer was run, which misbehaves my overwriting the current version of that DLL with an older one, or putting it in the wrong location such that it is loaded by Windows instead of the correct version.

The fix should be to run the installer for the latest VB5 runtime package from here: https://support.microsoft.com/en-us/help/180071/file-msvbvm50-exe-installs-visual-basic-5-0-run-time-files

That contains MSVBVM50.dll as well as several other related dependencies / files.

Before doing so it may be worth checking that there are not multiple copies of that DLL on the PC in different locations. For instance, one in C:\Windows\System32 and another in C:\Windows\SysWOW64. If that is the case it may be necessary to manually clean them up before reinstalling.