Kernel32.dll
Revision as of 07:07, 17 March 2012 by BrentNewland (talk | contribs)
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
kernel32 now compiles (only as a static library)
- Rewrote atom functions in kernel32
- Added support for piping in kernel32 Hartmut Birr
- Kernel32: Improved process code David Welch
- Kernel32: Implemented many of the ComXX exports Rob Dickenson
- 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)
- Kernel32: Improved process management (Eric Kohl)
- Kernel32: Support images with native subsystem ID (Casper Hornstrup)
- FLS support for threads (KJK::Hyperion)
- Control Dispatcher (James Tabor, KJK::Hyperion, Hartmut Birr)
- Changes to DllMain for cygwin support (Art Yerkes)
- Working edit control (Mark Tempel)
- 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)
- CreateFileMappingA/CreateFileMappingW: a NULL size argument for this function should result in the filesize being used (Gero Kuehn)
- Added WINE kernel32 regression tests (Steven Edwards)
- GetComputerName(Ex)?[AW] implemented (Art Yerkes)
- Added waiting on console handles (Art Yerkes)
- Support for regression tests (Casper Hornstrup)
- Fiber switching code fixed (KJK::Hyperion)
- Added more (in case we run on PowerPC) processor ids returned by GetSystemInfo() (Aleksey Bragin)
- Implemented GetProcessId(), GetProcessIoCounters() (Thomas Weidenmueller)
- Implemented SetFilePointerEx() and fixed SetFilePointer() to check if the calculated file position is negative (Thomas Weidenmueller)
- Implemented CreateHardLink(), GetFileSizeEx(), SetFileValidData(), SetFileShortName() (Thomas Weidenmueller)
- Updated FILE_INFORMATION_CLASS (Thomas Weidenmueller)
- Fix pipe create flags traslation (Gunnar Dalsnes)
- RaiseException should pass the exception parameters even if the exception is non-continuable (Filip Navara)
- Correctly initialize the startup info in WinExec (Filip Navara)
- Add more processor information, fixes bug #321 (Christoph von Wittich)
- Check if the temp path exist in GetTempPathW (Hartmut Birr)
- Compile kernel32 using w32api (Filip Navara)
- Report a failure for FindNextFile(NULL) instead of crashing (Filip Navara)
- Fixed the execution of batch files (Hartmut Birr)
- Simplified the converting of environment variables (Hartmut Birr)
- Handle OF_CREATE flag of OpenFile (Filip Navara)
- Error handling fix for GetTimeFormatA() (Martin Fuchs)
- Return some reasonable values from GlobalMemoryStatusEx (Filip Navara)
- Fix GlobalMemoryStatus & Ex (Jim Tabor)
- Display module names with the stack trace on unhandled exception (debug) (Mike Nordell)
- Ported GetBinaryType() from wine (Thomas Weidenmueller)
- Implemented GetThreadLocale() and partly implemented SetThreadLocale() (Thomas Weidenmueller)
- Implemented LoadModule() (Thomas Weidenmueller)
- Cleanup of the unicode mess (im)ported from wine (Thomas Weidenmueller)
- Fix command line handling (mostly double-quoting stuff) (Ge van Geldorp)
- Implement tape IO functions (Eric Kohl)
- Fix RosGetTimeFormat() (Kohn Emil Dan)
- GetTimeFormatA() implemenetation (Kohn Emil Dan)
- 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)
- 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)
- Rewrote ROS Critical Section implementation. Newer one is more complete, faster, and supports debug information. Thanks to Gunnar as well. (Alex Ionescu)
Kernel32.dll is a Win32 library
- Implemented
GetCommProperties
,ClearCommError
,CommConfigDialogA
,CommConfigDialogW
(Saveliy Tretiakov) - Implemented
GetCommConfig
,SetCommConfig
,FindFirstFileExW
(Dmitry Philippov)