Can't find MSVCP50.DLL

Hi Everyone,
One of my users is getting this message “Can’t find MSVCP50.DLL” when he
attempts to run my game. I did some research on it and it says SDL needs to
dynamically link with it at run time. So does this mean I need to distribute it
with my game to cover users that don’t have it? Also do I have to install it in
the windows/system directory or can it be in the same directory as my
executable?

David Moffatt wrote:

One of my users is getting this message "Can’t find MSVCP50.DLL"
when he attempts to run my game. I did some research on it and it
says SDL needs to dynamically link with it at run time.

MSVCP50.DLL is the Microsoft C++ Runtime Lib from Visual C++ v5. The
official win32 SDL.dll does not require it, and the only C++ code I can find
in SDL is for the Epoc platform.
If your game is written in C++ and you are building it using VC5, then it’s
your code that requires it, most likely.

So does this mean I need to distribute it with my game to cover
users that don’t have it? Also do I have to install it in the
windows/system directory or can it be in the same directory as
my executable?

To get rid of this external dependency, you can statically link the MS libs;
or ship the DLL with your game (I believe owning a copy of VC5 gives you the
right to redistribute it). The DLL is normally installed into System32, and
it is generally not a good idea to place it into your game dir, unless you
know exactly what you are doing. For example, if your app links to some
other components that also require MSVCP50.DLL and these components are
installed in System32 and there is a copy of MSVCP50.DLL in System32
already, you can get pretty bad version conflicts.

-Alex.

David Moffatt <david_moffatt hotmail.com> writes:

So does this mean I need to distribute it
with my game to cover users that don’t have it?

As far as I know (forgive me if I am wrong), the file MSVCP50.DLL
comes from Micro$oft Visual C++ 5 (or Visual Studio with the same version).
(Nearly?) any program created with it is linked to that Runtime library).
It doesn’t come from SDL. I am not sure whether this file is included
in Windows or not.

Also do I have to install it in
the windows/system directory or can it be in the same directory as my
executable?

I would distribute it and let it in your game’s directory, since
I am nearly sure (typical MS!) that there is more than 1 version of it.
If you copy it into windows/system or something similar it could
conflict with programs using another version.

Only my 2 cents.