Difference between revisions of "Kernel32.dll"

From ReactOS Wiki
Jump to: navigation, search
m
m
Line 117: Line 117:
 
* Implemented Get/SetProcessPriorityBoost (only the kernel32 part) ([[Thomas Weidenmueller]])
 
* Implemented Get/SetProcessPriorityBoost (only the kernel32 part) ([[Thomas Weidenmueller]])
 
* Fixed copying LARGE_INTEGER structs to FILETIME structs that may cause alignment problems ([[Thomas Weidenmueller]])
 
* Fixed copying LARGE_INTEGER structs to FILETIME structs that may cause alignment problems ([[Thomas Weidenmueller]])
 +
 +
[[ChangeLog-0.2.5]]
 +
 +
* Split up the handling if the fsd returns STATUS_NOT_IMPLEMENTED in MoveFileWithProgressW. Converted the destination name before calling NtSetInformationFile in MoveFileWithProgressW. ([[Hartmut Birr]])
 +
* Used the shared user data page instead of NtQuerySystemTime to get the time. ([[Hartmut Birr]])
 +
* Implemented SetDllDirectory() and GetDllDirectory() ([[Thomas Weidenmueller]])
 +
* Implemented CheckRemoteDebuggerPresent(), GetThreadIOPendingFlag(), CreateMemoryResourceNotification() and QueryMemoryResourceNotification() (only kernel32 part) ([[Thomas Weidenmueller]])
 +
* Made SetUnhandledExceptionFilter() thread-safe and use the default unhandled exception filter on startup ([[Thomas Weidenmueller]])
 +
* Implemented undocumented GetConsoleInputExeNameA/W() and SetConsoleInputExeNameA/W() used by NT's cmd.exe ([[Thomas Weidenmueller]])
 +
* Added stub for SetThreadUILanguage() to get NT's cmd.exe to load ([[Thomas Weidenmueller]])
 +
* Implemented GetUserDefaultUILanguage(), WriteConsoleW(), ReadConsoleW(), FillConsoleOutputCharacterW(), WriteConsoleInputW(), ReadConsoleOutputCharacterW(), ScrollConsoleScreenBufferW(), GetProcessIdOfThread(), GetThreadId(), GetThreadSelectorEntry(), SetProcessWorkingSetSize(), GetProcessHandleCount(), GetSystemRegistryQuota(), CheckNameLegalDOS8Dot3A/W(), IsDBCSLeadByte() and IsDBCSLeadByteEx() ([[Thomas Weidenmueller]])
 +
* Fixed ProcessIdToSessionId() to actually work and some minor fixes to GetHandleInformation(), SetHandleInformation(), CloseHandle() and DuplicateHandle() ([[Thomas Weidenmueller]])
 +
* Implemented GetNamedPipeHandleStateA() and a few fixes for GetNamedPipeHandleStateW(), atomically increment pipe IDs to be thread-safe ([[Thomas Weidenmueller]])
 +
* Create mailslots and named pipes with security information if requested ([[Thomas Weidenmueller]])
 +
* Fixed return value of FindCloseChangeNotification() ([[Thomas Weidenmueller]])
 +
* Implemented ToolHelp API: Heap32ListFirst(), Heap32ListNext(), Module32First(), Module32FirstW(), Module32Next(), Module32NextW(), Process32First(), Process32FirstW(), Process32Next(), Process32NextW(), Thread32First(), Thread32Next(), Toolhelp32ReadProcessMemory() and CreateToolhelp32Snapshot() ([[Thomas Weidenmueller]])
 +
* Fixed memory leak in CheckNameLegalDOS8Dot3A() (free the allocated unicode string) ([[Thomas Weidenmueller]])
 +
* Fixed Set/GetPriorityClass() not to call csrss and use NtSet/QueryInformationProcess() instead ([[Thomas Weidenmueller]])
 +
* Implemented Job APIs: CreateJobObjectA/W(), OpenJobObjectA/W(), IsProcessInJob(), AssignProcessToJobObject(), QueryInformationJobObject(), SetInformationJobObject() and TerminateJobObject() ([[Thomas Weidenmueller]])

Revision as of 05:48, 13 March 2012

Kernel32.dll is NOT synced with WINE, it is made by ReactOS (source)


http://en.wikipedia.org/wiki/Microsoft_Windows_library_files#Kernel32.dll

http://en.wikipedia.org/wiki/Windows_API#Overview

http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/?view=log

ChangeLog-0.0.12

kernel32 now compiles (only as a static library)

ChangeLog-0.0.18

  • Rewrote atom functions in kernel32

ChangeLog-0.0.20

ChangeLog-0.0.21

ChangeLog-0.1.0

  • Kernel32: Improved file attribute and file time handling (Gé van Geldorp)
  • Kernel32: Added support for lauching VDM on dos image load (Robert Dickenson)
  • Kernel32: Implemented GetThreadPriotityBoost() and SetThreadPriorityBoost() (Eric Kohl)

ChangeLog-0.1.1

ChangeLog-0.1.3

ChangeLog-0.1.5

ChangeLog-0.2.1

  • Use return value of GetLocaleInfoW() in GetTimeFormatW() (Martin Fuchs)
  • Added language resources for english, german and french (Martin Fuchs)
  • Don't clear GetTimeFormat() flags when calling RosGetTimeFormat() (Martin Fuchs)
  • Corrected TIME_NOSECONDS handling (Martin Fuchs)
  • Minor fix in GlobalMemoryStatus to get some applications happy (Filip Navara)
  • Implemented GetUserDefaultLangID and GetUserDefaultLCID; fixes bug #108 (Filip Navara)
  • Don't wait for GUI processes to finish (Gé van Geldorp)
  • GetLocaleInfoA implemented (copied from wine) (Gunnar Dalsnes)
  • Implementation of InitializeCriticalSectionAndSpinCount and RtlInitializeCriticalSectionAndSpinCount (Filip Navara)
  • Fixed relocation problem to re-activate new error messages (Martin Fuchs)
  • Implement some profile (.ini file) functions (Gé van Geldorp)
  • Implemented Write(Private)ProfileStringA/W (Gé van Geldorp)
  • CreateFileMappingA/CreateFileMappingW: a NULL size argument for this function should result in the filesize being used (Gero Kuehn)
  • GetComputerName(Ex)?[AW] implemented (Art Yerkes)
  • Check RtlAllocateHeap() return value for 8-byte alignment (Gé van Geldorp and Mark Tempel)

ChangeLog-0.2.2

ChangeLog-0.2.3

ChangeLog-0.2.4

  • More complete implementation of CharUpperA. (Filip Navara)
  • Implement ReadConsoleInputW, PeekConsoleInputW, ReadConsoleOutputW, WriteConsoleOutputW, SetConsoleIcon and GetConsoleWindow. (Filip Navara)
  • Fix Get[System/Window]Directory[AW] for Buffer == NULL case. (Filip Navara)
  • Fix return value of GetDriveType[AW]. (Filip Navara)
  • Implementation of GetCPFileNameFromRegistry, GetNlsSectionName and IsValidCodePage. (Filip Navara)
  • Partial implementation of MultiByteToWideChar and WideCharToMultiByte. (Filip Navara)
  • Fix realloc to not call HeapReAlloc for allocating new memory. (Filip Navara)
  • Remove invalid code from CreateToolhelp32Snapshot. (Filip Navara)
  • RtlReAllocateHeap shouldn't allocate memory if ptr == NULL. (Filip Navara)
  • Simplify CreateFileMapping[AW]. (Filip Navara)
  • Fix return value of GlobalReAlloc and GlobalUnlock. (Filip Navara)
  • Fix converting of UTF8 sequences in IntMultiByteToWideCharUTF8. (Filip Navara)
  • Properly set last error in WaitForSingleObjectEx. (Filip Navara)
  • Implemented GetACP() and GetOEMCP(). (Hartmut Birr)
  • Handle file names like ./somename in SearchPath() (Gé van Geldorp)
  • Don't reset LastError on success (CreateFile) (Gé van Geldorp)
  • Fix WinExec return value (Gé van Geldorp)
  • Implemented timer queue functions (Thomas Weidenmueller)
  • Implemented Get/SetProcessPriorityBoost (only the kernel32 part) (Thomas Weidenmueller)
  • Fixed copying LARGE_INTEGER structs to FILETIME structs that may cause alignment problems (Thomas Weidenmueller)

ChangeLog-0.2.5

  • Split up the handling if the fsd returns STATUS_NOT_IMPLEMENTED in MoveFileWithProgressW. Converted the destination name before calling NtSetInformationFile in MoveFileWithProgressW. (Hartmut Birr)
  • Used the shared user data page instead of NtQuerySystemTime to get the time. (Hartmut Birr)
  • Implemented SetDllDirectory() and GetDllDirectory() (Thomas Weidenmueller)
  • Implemented CheckRemoteDebuggerPresent(), GetThreadIOPendingFlag(), CreateMemoryResourceNotification() and QueryMemoryResourceNotification() (only kernel32 part) (Thomas Weidenmueller)
  • Made SetUnhandledExceptionFilter() thread-safe and use the default unhandled exception filter on startup (Thomas Weidenmueller)
  • Implemented undocumented GetConsoleInputExeNameA/W() and SetConsoleInputExeNameA/W() used by NT's cmd.exe (Thomas Weidenmueller)
  • Added stub for SetThreadUILanguage() to get NT's cmd.exe to load (Thomas Weidenmueller)
  • Implemented GetUserDefaultUILanguage(), WriteConsoleW(), ReadConsoleW(), FillConsoleOutputCharacterW(), WriteConsoleInputW(), ReadConsoleOutputCharacterW(), ScrollConsoleScreenBufferW(), GetProcessIdOfThread(), GetThreadId(), GetThreadSelectorEntry(), SetProcessWorkingSetSize(), GetProcessHandleCount(), GetSystemRegistryQuota(), CheckNameLegalDOS8Dot3A/W(), IsDBCSLeadByte() and IsDBCSLeadByteEx() (Thomas Weidenmueller)
  • Fixed ProcessIdToSessionId() to actually work and some minor fixes to GetHandleInformation(), SetHandleInformation(), CloseHandle() and DuplicateHandle() (Thomas Weidenmueller)
  • Implemented GetNamedPipeHandleStateA() and a few fixes for GetNamedPipeHandleStateW(), atomically increment pipe IDs to be thread-safe (Thomas Weidenmueller)
  • Create mailslots and named pipes with security information if requested (Thomas Weidenmueller)
  • Fixed return value of FindCloseChangeNotification() (Thomas Weidenmueller)
  • Implemented ToolHelp API: Heap32ListFirst(), Heap32ListNext(), Module32First(), Module32FirstW(), Module32Next(), Module32NextW(), Process32First(), Process32FirstW(), Process32Next(), Process32NextW(), Thread32First(), Thread32Next(), Toolhelp32ReadProcessMemory() and CreateToolhelp32Snapshot() (Thomas Weidenmueller)
  • Fixed memory leak in CheckNameLegalDOS8Dot3A() (free the allocated unicode string) (Thomas Weidenmueller)
  • Fixed Set/GetPriorityClass() not to call csrss and use NtSet/QueryInformationProcess() instead (Thomas Weidenmueller)
  • Implemented Job APIs: CreateJobObjectA/W(), OpenJobObjectA/W(), IsProcessInJob(), AssignProcessToJobObject(), QueryInformationJobObject(), SetInformationJobObject() and TerminateJobObject() (Thomas Weidenmueller)