ReactOS 0.2.0/Changelog

Here are following Changelog for ReactOS 0.2.0:


  • Implemented driver reinitialization (Eric Kohl)
  • Added "addr" "x" and "tlist" commands to kdbg (Art Yerkes)
  • Added the beginnings of an implementation of NtSetInformationToken (Art Yerkes)
  • Implemented shared segments for images (Hartmut Birr)
  • Work on the error log worker (Eric Kohl)
  • IoReuseIrp, IoQueueThreadIrp, IoEnqueueIrp implementations (Gunnar Dalsnes)
  • APC improvements (Gunnar Dalsnes)
  • Exception handler on broken usermode stack pointer fix (Mike Nordell)


  • Window activation/focus (Filip Navara, Gé van Geldorp)
  • StretchDIBits implementation (Filip Navara)
  • Initial implementation of message hooks (Gé van Geldorp)
  • Support for the FR_PRIVATE and FR_NOT_ENUM flags for AddFontResourceEx (Thomas Weidenmueller)
  • Implement real locking for GDIOBJ objects (Gé van Geldorp)
  • Stretchblitting 32->32, 8->8 bpp implemented (Aleksey Bragin)
  • GetMessageExtraInfo and SetMessageExtraInfo implementations (Thomas Weidenmueller)
  • Initial implementation of maximize/restore and minimize buttons for windows (Thomas Weidenmueller)
  • Implemented WM_SETCURSOR messages (Thomas Weidenmueller)
  • Serialize access to display driver (Gé van Geldorp)
  • Implemented SetCursor and rewrote some cursor/icon routines (Thomas Weidenmueller)
  • Support for RASTERCAPS in NtGdiGetDeviceCaps (Filip Navara)
  • RLE4/8 Bitmap Compression support (Jonathan Wilson)
  • LR_SHARED flag support for LoadIcon and LoadCursor (Thomas Weidenmueller)
  • Rewritten painting implementation (Filip Navara)
  • Font smoothing implementation (Thomas Weidenmueller)
  • GetGUIThreadInfo implementation (Thomas Weidenmueller)
  • EnumProps, EnumPropsEx implementations (Thomas Weidenmueller)
  • Marshall messages across process boundaries (not complete yet) and generalize message sending from kernel (Gé van Geldorp)
  • Initial NtGdiStretchBlt implementation (Aleksey Bragin)
  • Message queue fixes (Thomas Weidenmueller, Mike Nordell)
  • Palette fixes (Filip Navara)


  • CopyImage, FindWindowExA implementations (Filip Navara)
  • ScrollWindow, ScrollWindowEx, ScrollDC and DDE ported from WINE (Filip Navara)
  • TabbedTextOutA, TEXT_TabbedTextOut, TabbedTextOutW (Casper Hornstrup)
  • Proper scrollbar implementation (Gé van Geldorp)
  • Work on MDI child windows (Filip Navara)
  • WndProc changes (Jonathan Wilson)
  • CheckRadioButton implementation (Thomas Weidenmueller)
  • WM_MDICREATE support (Richard Campbell)


  • Fix shell image loading (icon index 0 is invalid) (Martin Fuchs)
  • Tranparent icon labels on the desktop (Martin Fuchs)
  • Implemented IShellExecuteHook for control panel (Martin Fuchs)
  • MessageBox-implementation of RestartDialog and RestartDialogEx (Martin Fuchs)
  • Allow SHGetPathFromIDListA to resolve items in special folders (Gé van Geldorp)
  • Execute items by default using new function ShellView_OpenSelectedItems (Gé van Geldorp)
  • Czech translation (Filip Navara)
  • Rewrote SHGetFolderPathA to call SHGetFolderPathA (Filip Navara)
  • Rewrote SHGetSpecialFolderPath[AW] to call SHGetFolderPath[AW] (Filip Navara)
  • Correct path parsing in ISF_Desktop_fnParseDisplayName (Martin Fuchs)
  • Implementation of shell link resolving for ShellExecuteXYZ and IExtractIcon (Martin Fuchs)
  • SHGetPathFromIDListA/W now functions as Microsoft(R) Windows(R); only real file system paths, no virtual CLSID paths (Martin Fuchs)
  • ISvItemCm_fnQueryContextMenu: distinguish between Open and Explore commands (Martin Fuchs)
  • ShellView_DoContextMenu: activate Explore-Context menu on the desktop (Martin Fuchs)
  • ShellView_CreateList, SIC_Initialize, PidlToSicIndex: enabled transparent icons on the desktop (Martin Fuchs)
  • Improved error handling for many functions (Martin Fuchs)
  • IShellLink: implemented IPersistFile::IsDirty (Martin Fuchs)
  • ShellExecuteExA, ISF_MyComputer_fnGetDisplayNameOf: handle shell links to virtual folders (Martin Fuchs)
  • ExitWindowsDialog: implemented shutdown request (Martin Fuchs)
  • Implementation of RestartDialog and RestartDialogEx (Martin Fuchs)
  • SHELL32_GetItemAttributes: implemented SFGAO_LINK (Martin Fuchs)
  • Implemented SHGetRealIDL (Martin Fuchs)
  • SHBindToParent: call QueryInterface for Desktop (Martin Fuchs)


  • Implemented fast loading of bounded images (Hartmut Birr)
  • Implemented handling of tls sections (Hartmut Birr)


Nameservers are now correctly listed when per adapter nameservers are specified in the registry (Art Yerkes)


  • DrawThemeText and GetThemeBackgroundContentRect implementations (KJK::Hyperion)
  • Button class work (KJK::Hyperion)


  • Port of WINE __CxxFrameHandler and C++ functions (Steven Edwards)
  • Make printf flush the output stream (Mike Nordell)


  • Basic support to display NTFS streams (Martin Fuchs)
  • Context menu implementation for desktop window (Martin Fuchs)
  • Beginning of drag'n'drop support on the desktop (Martin Fuchs)
  • Implementation of control panel folder (Martin Fuchs)
  • Now using a light weight approach without button controls (Martin Fuchs)
  • Now a icon cache for start menu and quick launch bar (Martin Fuchs)
  • Direct file system gains a huge speedup for the start menu (Martin Fuchs)
  • Start menu now can be used by keyboard navigation (Martin Fuchs)
  • Size of notification area and quicklaunch bar in the desktop bar are now automatically adjusted (Martin Fuchs)
  • Better looking icons with 4, 8 and 32 bit colors (Everaldo Coelho)


  • Auto-detect whether to create a GUI or a TUI console (Gé van Geldorp)
  • Improved keyboard handling (Art Yerkes)


  • Use HAL PCI bus routines in order avoid race conditions (Eric Kohl)
  • Use slot number to distinguish multiple device of the same kind (Eric Kohl)


  • AfdDispCompleteListen, AfdDispListen, AfdKillListenRequest, TdiAddressSizeFromType, TdiBuildNullConnectionInfo, TdiListen implementations (Casper Hornstrup)


  • IP addresses are now registry-configured, per-adapter (Vizzini)
  • DisplayTCPPacket, TCPListen prototype implementations (Casper Hornstrup)
  • DispTdiAssociateAddress, DispTdiListen, DisplayTCPHeader, DisplayTCPPacket, TCPListen, TCPiReceive, TCPReceive implementations (Casper Hornstrup)


CreateCatalog implementation (Casper Hornstrup)


  • Finished media change support, except for prper volume dismount (Eric Kohl)


  • Detect serial ports and serial pointer devices (Eric Kohl)
  • Detect PS/2 Port and Pointer Device (Mouse) (Eric Kohl)
  • Calculate CPU speed (Eric Kohl)


  • Work on winlogon.exe, msgina.dll (Thomas Weidenmueller)
  • WinMM.dll ported from WINE (Steven Edwards, Casper Hornstrup)
  • Work to compile ReactOS using other compilers than GCC (Mike Nordell, Aleksey Bragin)
  • Initial version of VBE miniport driver (Filip Navara)
  • Initial version of generic framebuffer display driver (Filip Navara)
  • Addition of Kernel Javascript System: allows scripting of kernel debugger (Art Yerkes)
  • Move desktop window proc from WIN32K to CSRSS (Gé van Geldorp)
  • Import of shell32 from WINE (Gé van Geldorp)
  • Swedish keyboard dll (Johannes Olofsson)
Community content is available under CC-BY-SA unless otherwise noted.