Hugh Perkins wrote:
msvcrt.dll is the old pre-.net <http://pre-.net> dll, msvcr71.dll is the .net dll


The import libraries have teh same name in each case (msvcrt.lib, msvcprt.lib) but point towards a differently named dll, one of those above, depending on the compiler version.

This, from <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_c_run.2d.time_libraries.asp>, is noteworthy:

  What is the difference between msvcrt.dll and msvcr71.dll?

  The msvcrt.dll is now a "known DLL," meaning that it is a system
  component owned and built by Windows. It is intended for future use
  only by system-level components. An application should use and
  redistribute msvcr71.dll, and it should avoid placing a copy or using
  an existing copy of msvcr71.dll in the system directory. Instead, the
  application should keep a copy of msvcr71.dll in its application
  directory with the program executable. Any application built with
  Visual C++ .NET using the /MD switch will necessarily use msvcr71.dll.

Well that's annoying. So why bother with msvcr71.dll at all? Why not just build with /MT instead and pull in the static library? What does using the DLL runtime buy you?

Braden


_______________________________________________
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d

Reply via email to