Difference between revisions of "Msvcrt.dll"

From ReactOS Wiki
Jump to: navigation, search
m
m (Bolded first use of the term.)
 
(10 intermediate revisions by 4 users not shown)
Line 1: Line 1:
http://en.wikipedia.org/wiki/Microsoft_Windows_library_files#Msvcrt.dll_and_variants
+
{{Stub}}
  
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvcrt/?view=log
+
'''Msvcrt.dll''' is the name of the Microsoft Visual C runtime.
  
Msvcrt.dll is the Microsoft Visual C++ Run-Time for Visual C++ version 4.2 to 6.0. It provides programs compiled with these versions of Visual C++ a typical set of library functions required by C and C++ programs. These include string manipulation, memory allocation, C-style input/output calls, etc.
+
== Description & Purpose ==
 +
Msvcrt.dll is the Microsoft Visual C++ Runtime for Visual C++ version 4.2 to 6.0. It provides programs compiled with these versions of Visual C++ a typical set of library functions required by C and C++ programs. These include string manipulation, memory allocation, C-style input/output calls, etc. It is needed for programs which depend on a C programming language runtime. This includes Python for Windows and Python programs for it, the Java Virtual Machine 6 and Java programs written for it etc., or any program compiled with MSVC.
  
It has also shipped with Windows versions since Windows 2000 for use by other Windows components. In older versions of Windows, programs which linked against Msvcrt.dll were expected to install a compatible copy in the System32 folder, but this contributed to DLL Hell.
+
It has also shipped with Windows versions since Windows 2000 for use by other Windows components. In older versions of Windows, programs which linked against Msvcrt.dll were expected to install a compatible copy in the System32 folder, but this contributed to [[Wikipedia:DLL Hell|DLL Hell]].
  
 
Versions of Visual C++ before 4.0 and since 7.0 have used differently named DLLs for each version (msvcr20.dll, msvcr70.dll, msvcr71.dll, etc.). Applications are required to install the appropriate version.
 
Versions of Visual C++ before 4.0 and since 7.0 have used differently named DLLs for each version (msvcr20.dll, msvcr70.dll, msvcr71.dll, etc.). Applications are required to install the appropriate version.
  
[[ChangeLog-0.0.18]]
+
== Code History ==
* Added many functions to msvcrt library
+
{{Code history|dll/win32/msvcrt}}
[[ChangeLog-0.1.0]]
 
* MSVCRT: Added binary and unicode file IO support to msvcrt ([[Robert Dickenson]])
 
[[ChangeLog-0.1.1]]
 
* Msvcrt: Implemented _spawnlp ([[Hartmut Birr]])
 
[[ChangeLog-0.2.0]]
 
* Port of WINE __CxxFrameHandler and C++ functions ([[Steven Edwards]])
 
* Make printf flush the output stream ([[Mike Nordell]])
 
[[ChangeLog-0.2.1]]
 
* Fix environment variable handling ([[Mike Nordell]])
 
[[ChangeLog-0.2.2]]
 
  
*Patch to get Microsoft Paint closer to working ([[Michael Fritscher]])
+
== External links ==
*Handle characters outside first page ([[Ge van Geldorp]])
+
*[[wikipedia:Microsoft Windows library files#MSVCRT.DLL,_MSVCP*.DLL_and_CRTDLL.DLL|MSVCRT.DLL, MSVCP*.DLL and CRTDLL.DLL (Wikipedia)]]
*Handle invalid Unicode strings for %S format like MS does ([[Ge van Geldorp]])
 
  
 
+
[[Category:Development]]
[[ChangeLog-0.2.3]]
+
[[Category:DLL]]
*Made some flags for the flag value from the FILE structure compatible with the mingw headers ([[Hartmut Birr]])
 
*Use _IO_LBF instead of _IOLBF, because _IOSTRG and _IOLBF has the same value ([[Hartmut Birr]])
 
*Fixed _chmod and _wchmod ([[Hartmut Birr]])
 
*Don't change the environment block if the number of variables has not changed (in BlockEnvToEnviron) ([[Hartmut Birr]])
 
*Use a copy of the environment strings (in BlockEnvToEnviron) ([[Hartmut Birr]])
 
 
 
[[ChangeLog-0.2.4]]
 
* Fixed some pointer increments/decrements. ([[Hartmut Birr]])
 
* Fixed some 'dereferencing type-punned pointer will break strict-aliasing rules' warnings on higher optimisation levels. ([[Hartmut Birr]])
 
* Enabled the declaration of DbgPrint because they is used in DPRINT and CHECKPOINT macros. ([[Hartmut Birr]])
 
 
 
[[ChangeLog-0.2.5]]
 
 
 
* Housekeeping on some code imported from Wine ([[Steven Edwards]], [[Filip Navara]])
 
* Allow always shared read for a file which is opened for read only. ([[Hartmut Birr]])
 
* made timezone buffers large enough to avoid buffer overflow caused by Firefox/Thunderbird ([[Thomas Weidenmueller]])
 

Latest revision as of 19:43, 31 May 2019

The page Msvcrt.dll is a short article on something that should have a lot more information written on it.
If you know anything else about it, you are STRONGLY encouraged to add the information in. If you are unsure of proper formatting or style, add it to the talk page or this page itself as you think best and others will help.


Msvcrt.dll is the name of the Microsoft Visual C runtime.

Description & Purpose

Msvcrt.dll is the Microsoft Visual C++ Runtime for Visual C++ version 4.2 to 6.0. It provides programs compiled with these versions of Visual C++ a typical set of library functions required by C and C++ programs. These include string manipulation, memory allocation, C-style input/output calls, etc. It is needed for programs which depend on a C programming language runtime. This includes Python for Windows and Python programs for it, the Java Virtual Machine 6 and Java programs written for it etc., or any program compiled with MSVC.

It has also shipped with Windows versions since Windows 2000 for use by other Windows components. In older versions of Windows, programs which linked against Msvcrt.dll were expected to install a compatible copy in the System32 folder, but this contributed to DLL Hell.

Versions of Visual C++ before 4.0 and since 7.0 have used differently named DLLs for each version (msvcr20.dll, msvcr70.dll, msvcr71.dll, etc.). Applications are required to install the appropriate version.

Code History

Commit history (Source code can be found in: /reactos/dll/win32/msvcrt)

External links