VS2005 CRT DLLs - ship with vista?

Started by
3 comments, last by AshleysBrain 16 years, 10 months ago
Would you recommend I static link the C++ runtime library to my games for deployment or use the DLL? If I use the DLL, does it ship with XP/XP SP2/Vista? I've done a few tests and turns out some users don't already have them. VS2005 is 2 years old now, why doesnt MS just send them over windows update?
Construct (Free open-source game creator)
Advertisement
Quote:Original post by AshleysBrain
Would you recommend I static link the C++ runtime library to my games for deployment or use the DLL?

If I use the DLL, does it ship with XP/XP SP2/Vista? I've done a few tests and turns out some users don't already have them.

VS2005 is 2 years old now, why doesnt MS just send them over windows update?


I wonder if it could be because the CRT is a part of Visual Studio, and not Windows. [wink]

Why should they bundle components from other, unrelated products, with Windows? They get into enough trouble for doing it with media players and browsers, after all.
But not every program is made using VS2k5. So why should they bundle that one in particular? If you write a program, you're expected to distribute the dependencies it requires. That's a pretty common practice, isn't it? The CRT is no different than any other dll you might use.
Quote:Original post by AshleysBrain
Would you recommend I static link the C++ runtime library to my games for deployment or use the DLL?

If I use the DLL, does it ship with XP/XP SP2/Vista? I've done a few tests and turns out some users don't already have them.

Nope, but since you have VS2005 installed you probably have the redist. You can either include the redist in your installer, or point users to the download.
Note that this download is the original VS2005 redist, not the SP1 one. You'd have to include that one in your installer, or supply it as a separate download.
Quote:Original post by AshleysBrain
VS2005 is 2 years old now, why doesnt MS just send them over windows update?
I have no idea. A very good question indeed!
Quote:Original post by Spoonbender
Why should they bundle components from other, unrelated products, with Windows?

In the case of the CRT? Because it's really useful, because they've always done it, because nearly every Windows C++ program uses it, because it greatly simplifies the installation process without bloating download sizes... the reasons go on and on.
As I understand it, Vista is shipping with the VS2005 CRT, because I've been able to run it off a fresh Vista laptop with DLL linkage.

Practically every computer today has the old VC6 CRT/MFC stuff (version 4.0 I believe, see if msvcrt40.dll is in your windows directory). So MS seems to make a tradition of shipping their new OSs with all the current CRT stuff. Now why don't they extend this back to XP?

This gives me two choices:
- Use VS2005, and have bloated EXEs and DLLs (static linked) or face redist/DLL bother (you can't just assume the EXE will run)
- Just hit build in VC6 and have lightweight EXEs and DLLs that run everywhere. (If only VC6 were a real C++ compiler!)

IMO seems backporting is in Microsoft's favour.
Construct (Free open-source game creator)

This topic is closed to new replies.

Advertisement