Share via


USE_MSVCRT

Use the USE_MSVCRT macro to instruct the Build utility to use the multithreaded runtime libraries in a DLL for your build.

Syntax

USE_MSVCRT = 1

Comments

You must set one of the following macros equal to one in your Sources file. The other ones should not be defined at all (you may not define them equal to zero or equal to "").

The different libraries specified by these macros shown in the following table:

Macro Effect

USE_MSVCRT

Use the multithreaded run-time libraries in a DLL. In the free build environment, this library is Msvcrt.lib. In the checked build environment, this library is Msvcrtd.lib.

USE_LIBCMT

Use the multithreaded static libraries.

USE_LIBCNTPR

Use the kernel run-time libraries.

USE_NTDLL

Use Ntdll.dll (the DLL for NT-based operating systems).

USE_NOLIBS

Do not use any run-time libraries.

 

If none of these macros are defined, the default behavior is to statically link to the single-threaded run-time libraries. However, starting with the Windows Driver Kit (WDK) for Windows Vista, support for these libraries was removed and you will now get a link failure because the libraries were not found. To avoid this failure, set one of these macros (preferably USE_MSVCRT) to 1.

Note   You should never list Msvcrt.lib or Msvcrtd.lib in TARGETLIBS. However, you can list Ntdll.lib in TARGETLIBS.

 

 

Send comments about this topic to Microsoft

Build date: 5/3/2011