none
vcredist_x86 / Debug build

    Question

  • Hi All...  I installed vcredist_x86 on a test server machine along with some unmanaged c++ executables we develope - everything runs with no problem - except for my own code...  I want to put a debug-built executable on that machine and debug it from my development machine.  The server does not have VS installed and it's complaining about that very helpful "The application has failed to start...  Reinstalling the application may..." message.  Whats the best way of getting a debug build to run on a machine without VS installed?  Thanks!  -- Curt

     

     

     

    Monday, May 5, 2008 11:37 AM

Answers

  • The easiest way to do it is to copy the contents of the following folders to your program folder (the same folder you have your debug executable in)

     

    For Visual C++ 2005:

     

    C:\program files\Microsoft Visual Studio 8\VC\redist\Debug_NonRedist\x86

     

    For Visual C++ 2008:

     

    C:\program files\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist\x86

     

    if using the VC/MFC Feature Pack for VC++ 2008 you must also define the following two defines near the top of your stdafx.h:

     

    #define _BIND_TO_CURRENT_MFC_VERSION 1

    #define _BIND_TO_CURRENT_CRT_VERSION 1

     

    Monday, May 5, 2008 4:31 PM

All replies

  • There is no way of installing a Debug redistributable version of the CRT libraries because it doesn't exist.  In fact, I believe the license prohibits you from distributing the Debug CRT libraries, even though it's theoretically possible (as private assemblies).  So you either have to use the Release build, or install Visual Studio on that machine.

    Monday, May 5, 2008 3:48 PM
  • The easiest way to do it is to copy the contents of the following folders to your program folder (the same folder you have your debug executable in)

     

    For Visual C++ 2005:

     

    C:\program files\Microsoft Visual Studio 8\VC\redist\Debug_NonRedist\x86

     

    For Visual C++ 2008:

     

    C:\program files\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist\x86

     

    if using the VC/MFC Feature Pack for VC++ 2008 you must also define the following two defines near the top of your stdafx.h:

     

    #define _BIND_TO_CURRENT_MFC_VERSION 1

    #define _BIND_TO_CURRENT_CRT_VERSION 1

     

    Monday, May 5, 2008 4:31 PM
  • You might want to take a look at the following MSDN article: http://msdn.microsoft.com/en-us/library/aa985618.aspx

    First of all, it specifies that remote debugging may not work with private assemblies, and you'll have to install them as shared assemblies anyway.  Second, you should be aware that deploying the debug CRT assemblies outside a Visual Studio installation is only permitted on an internal development machine (so states the article).
    Monday, May 5, 2008 6:51 PM
  • Sasha, thanks for your concerns, but there's no license being violated here as we're not redistributing anything.  As I mentioned, the debugs are being moved to a test server, used only for development and testing.  Ted's suggestion of copying the files from the path he specified works like a charm!  Thanks again.  -- Curt

     

    Monday, May 5, 2008 8:09 PM