mirror of
https://github.com/UzixLS/KernelEx.git
synced 2025-07-18 23:11:19 +03:00
218 lines
12 KiB
Plaintext
Executable File
218 lines
12 KiB
Plaintext
Executable File
KernelEx v4.5 RC 1 by Xeno86
|
|
2010-07-30
|
|
|
|
implemented kernel32.RtlCaptureContext for Firefox 4.0 Beta 2
|
|
reworked compatibility tab to allow resetting compatibility settings to default values
|
|
compatibility tab is visible on all PE modules thus allowing to change compatibility options on per-module basis
|
|
disallow resources with high ID (>32767) when KernelEx is disabled
|
|
perform platform check when KernelEx is disabled
|
|
added kernel32.GetComputerNameEx stubs which supposedly make Artweaver run
|
|
simulate TrueType MS Sans Serif for VLC
|
|
use ASCII table instead of ISO8859-1 for character conversion (fixes problem with national characters in paths)
|
|
added ADVAPI32.FileEncryptionStatus stubs
|
|
added get-post I/O completion ports functionality for Firefox 3.6.4
|
|
added a bunch of new user32 stubs allowing to run newer MPC-HC, includes: DefRawInputProc, GetRawInputBuffer, GetRawInputData, GetRawInputDeviceList, GetRawInputDeviceInfoA, GetRawInputDeviceInfoW, GetRegisteredRawInputDevices, RegisterRawInputDevices, PrintWindow
|
|
more accurate object owner check in DeleteObject
|
|
fixed missing ScriptCache unlock in case of error
|
|
fixed crash on displaying of error message in KernelEx Setup program
|
|
added a simple protection against footer corruption in jemalloc heap
|
|
excluded jemalloc from handling limited size heaps
|
|
added "Disable custom heap" configuration
|
|
added "Default mode" configuration
|
|
fixed GTA:SA crash on game load
|
|
fixed Rally Championship '99 crash
|
|
removed shell32.SHGetDiskFreeSpaceW as there is no such function in WIN32 api
|
|
implemented missing SHELL32.SHGetDiskFreeSpaceEx on Windows 98
|
|
implemented SHELL32.SHGetDiskFreeSpaceW for Adobe Flash 10
|
|
removed positive PIDs patch as it causes incompatibility with MSYS and propably other apps too
|
|
|
|
---------------------------------------
|
|
|
|
KernelEx v4.5 Beta 2 by Xeno86
|
|
2010-02-14
|
|
|
|
fixed incompatibility with Japanese WinME
|
|
implemented USP font cache
|
|
fix: kexFlushAppSettings didn't clear wildcard app settings
|
|
fix: EnumFontFamiliesEx should only fill TEXTMETRIC structure if font is not TrueType
|
|
FONTSIGNATURE sub-structure doesn't seem to contain valid information, accessing it could trigger a crash
|
|
changed AddFontMemResourceEx and RemoveFontMemResourceEx stubs for Opera 10.50 beta compatibility
|
|
implemented shell32.SHParseDisplayName [xp and above]
|
|
implemented winspool.EnumPrintersW
|
|
added advapi32.CreateProcessWithLogonW, InitiateSystemShutdownEx stubs
|
|
replaced thread-pool implementation with custom code
|
|
added timer-queue functions
|
|
updated jemalloc to version from FF3.6
|
|
added checks to alloc/realloc/free to make jemalloc more fault tolerant - better match Windows 9x behaviour
|
|
kexCOM: LoadLibrary(self) trick to prevent premature unload in buggy programs
|
|
|
|
---------------------------------------
|
|
|
|
KernelEx v4.5 Beta 1 by Xeno86
|
|
2010-01-18
|
|
|
|
disable named/rcdata resource types mirroring
|
|
|
|
changed obfuscator for non-negative PIDs
|
|
|
|
fix crash when a process is created with '.exe' renamed to '.dll'
|
|
|
|
added GDI anti-leaking code which forces NT destroying rules on font and bitmap objects.
|
|
|
|
implemented extended TLS (Thread Local Storage), extends limit of 80 to ~1100 slots
|
|
|
|
added Thunking Unicode Layer - set of user32 APIs
|
|
which provides consistent Unicode window procedures conversion,
|
|
allowing correct message conversion and mixture of window subclassing with NT-like rules.
|
|
|
|
revamped non-shared api library loading process
|
|
|
|
added jemalloc memory allocator, replacing standard Windows heap for applications
|
|
|
|
fix: LoadShfolderProc could crash if shfolder.dll was unloaded by the application
|
|
|
|
added USERENV library from Wine project
|
|
|
|
changed module configuration settings storage - single module can now have different configurations under different processes (better accuracy, overriding is supported, recursive inheritance is supported, speed gains)
|
|
|
|
change: Allow api library to be loaded even if some overridden modules aren't found (skips module tables)
|
|
|
|
shell folder fix - display CSIDL_COMMON_* folders in start menu
|
|
|
|
added support for environment variables in AppSettings database
|
|
|
|
added kexCOM - implementing IShellLinkW and IExtractIconW interfaces for CLSID_ShellLink which are missing from Windows 98 shell
|
|
|
|
Compatibility tab changes:
|
|
* redesigned, added baloon tips
|
|
* added option to disable configuration inheritance to child processes
|
|
* added option to override module configuration with process'es configuration (debug only)
|
|
* fixed COM implementation
|
|
|
|
changes into the installer:
|
|
* enforce reboot after install/uninstall before subsequent installation,
|
|
* copy kernel32.bak to temporary file during uninstall before reboot
|
|
* forbid direct downgrades
|
|
|
|
API changes:
|
|
|
|
fix GlobalLock and GlobalUnlock to work properly with HeapAlloc pointers
|
|
make CreateFile ignore unsupported FILE_SHARE_DELETE flag
|
|
make GetDiskFreeSpace, GetDiskFreeSpaceEx not fail on certain file paths
|
|
implemented USERENV.GetUserProfileDirectory, GetAllUsersProfileDirectory, GetProfilesDirectory
|
|
added various winspool unicode (unicows) apis and stubs
|
|
added EnumServicesStatusEx stubs
|
|
fix CreateDIBSection to behave consistently with NT
|
|
fix GetTempFileName to behave consistently with NT
|
|
make ExtCreatePen not fail on PS_USERSTYLE pen style
|
|
replaced MSLU GetObjectW (bug: MSLU always returns full object size regardless of buffer size passed) with custom implementation
|
|
replaced MSLU RegEnumValueW with custom implementation
|
|
added support for REG_EXPAND_SZ and REG_MULTI_SZ in RegQueryValueExW
|
|
fixed RegQueryValueExW not handling return values properly
|
|
fix: win9x doesn't allow MB_ERR_INVALID_CHARS parameter to be set for UTF-7 or UTF-8 codepages in MultiByteToWideChar and WideCharToMultiByte calls
|
|
fix: RegisterWaitForSingleObject should test object state once and return immediatelly when dwMiliseconds is zero
|
|
implemented GDI32.GetCharABCWidthsI, ADVAPI32.RtlGenRandom, KERNEL32.GetModuleHandleEx
|
|
fixed uxtheme return addresses
|
|
implemented theme metric functions
|
|
fix WTSGetActiveConsoleSessionId should return 0 = local session instead 0xffffffff = no session
|
|
implemented kernel32.DelayLoadFailureHook, QueueUserWorkItem, RegisterWaitForSingleObject, RegisterWaitForSingleObjectEx, UnregisterWait, UnregisterWaitEx, IsWow64Process, ProcessIdToSessionId, WTSGetActiveConsoleSessionId, IsWow64Process
|
|
removed shlwapi.StrCmpLogicalW (which is available with IE6-updated shlwapi)
|
|
implemented advapi32.DeleteAce
|
|
added stubs for advapi32.NotifyBootConfigStatus, QueryWindows31FilesMigration, SynchronizeWindows31FilesAndWindowsNTRegistry
|
|
changed advapi32.CreateWellKnownSid
|
|
change: logfont* is optional in gdi32.EnumFontFamiliesEx on NT but not on 9x
|
|
added stubs for kernel32.HeapSetInformation, GetProcessIoCounters, RtlCaptureStackBackTrace
|
|
support events signalling in ReadFile & WriteFile overlapped apis
|
|
fixed system bug in user32.GetNextDlgTabItem - system crashes trying to get next control in dialog to tab when there is only one control on dialog
|
|
fixed GetDefaultPrinterW
|
|
replaced SHGetFolderLocation Wine implementation with custom implementation
|
|
fix: custom SHGetFolderLocation shouldn't be enabled for shell32 >= 5.0
|
|
|
|
---------------------------------------
|
|
|
|
KernelEx v4.0 Final 2 by Xeno86
|
|
2009-08-20
|
|
|
|
fixed handling of forwarded exports broken in revision 32
|
|
fixed very rare crash which could occur at boot when module table pointer becomes invalid
|
|
added algorithm similar to KnownDLLs for auxiliary libraries to be disabled when extensions are disabled
|
|
perform stub upgrade on version mismatch, not only if it is lower than expected
|
|
added SHLWAPI.StrCmpLogicalW
|
|
added SHELL32.SHOpenFolderAndSelectItems stub
|
|
fixed KERNEL32.lstrcpynW
|
|
added kexAreExtensionsEnabled to SDK
|
|
api logging should now work correctly
|
|
|
|
---------------------------------------
|
|
|
|
KernelEx v4.0 Final by Xeno86
|
|
2009-07-23
|
|
|
|
added option to select between enabling KernelEx extensions for all applications and disabling them
|
|
added KernelEx installation verifier
|
|
migration to PSDK 2003, compilation on MSVC 6 without PSDK not possible
|
|
change: delay-load usp10.dll, comdlg32.dll, shell32.dll and winspool.drv in kexbasen
|
|
fix: loading Unicows.dll altered FPU flags and caused certain programs to crash on first start
|
|
added option to kexcontrol to kill all processes depending on KernelEx
|
|
disable api override for shared modules
|
|
change: services have disabled extended api by default - this should hopefully fix shutdown problems
|
|
change: shared api libraries are now referenced by all processes that reference any of non-shared api libraries
|
|
change: Core's critical sections are now global - it should continue to function even after hosting process is terminated
|
|
removed all process lock during initialization
|
|
don't load MSLU on initialization
|
|
remember and restore last error on MSLU load
|
|
enable overrides for MSVCRT.DLL
|
|
disable overrides for SPOOL32.DLL process
|
|
fix: preload not yet loaded shared system DLLs
|
|
GetOpenFileName / GetSaveFileName fix for 98 shell - file choose dialog in flash applets should work now
|
|
remove check in psapi.EnumProcessModules that conflicts with debuggers
|
|
change: accept CP_THREAD_ACP flag for MultiByteToWideChar and WideCharToMultiByte
|
|
added api logging window (in debug Core) - based on listview, filtering, saving log to file
|
|
added kexIsDebugCore api to sdk
|
|
change: compatibility tab shows api log checkbox under debug Core
|
|
|
|
implemented worldtransform APIs for GTK+ Cairo (thanks Tihiy)
|
|
implemented RPCRT4.RpcStringFreeW, UuidFromStringW, UuidToStringW
|
|
replaced buggy Unicows GDI32.EnumFontFamiliesExW, EnumFontFamiliesW with custom implementation
|
|
implemented KERNEL32.GetVolumePathNameA/W (semi-stub)
|
|
implemented WINSPOOL.GetDefaultPrinterA/W
|
|
replaced Unicows kernel32.CompareStringW, GetStringTypeExW, GetStringTypeW, LCMapStringW, lstrcmpW, lstrcmpiW with Wine implementation
|
|
replaced Unicows kernel32.GetAtomNameW, GetModuleFileNameW, GetModuleHandleW, LoadLibraryExW, LoadLibraryW with custom implementation
|
|
replaced Unicows user32.CharLowerBuffW, CharLowerW, CharNextW, CharPrevW, CharToOemBuffW, CharToOemW, CharUpperBuffW, CharUpperW, IsCharAlphaNumericW, IsCharAlphaW, IsCharLowerW, IsCharUpperW, OemToCharBuffW, OemToCharW with Wine implementation
|
|
added kernel32.FoldStringA, FoldStringW from Wine
|
|
fixed not-working kernel32.GetSystemWindowsDirectoryW, CommandLineToArgvW
|
|
|
|
---------------------------------------
|
|
|
|
KernelEx v4.0 RC 2 by Xeno86
|
|
2009-03-21
|
|
|
|
fixed uxtheme version check
|
|
added compilation instructions
|
|
fixed msimg32.AlphaBlend bug incorrectly calculating transparency
|
|
added kernel32.GetVersionW to default configuration
|
|
added advapi32.OpenSCManager stubs
|
|
implemented kernel32.GetConsoleWindow
|
|
modified CreateFile, ReadFile and WriteFile so that they now accept overlapped flag
|
|
fixed non-working MoveFileWithProgressA
|
|
fix: DirectX setup has disabled extensions
|
|
added psapi.EmptyWorkingSet stub
|
|
change: KernelEx will first load any other MPRServices before initializing
|
|
added workaround for situation where some kernel driver hijacked system functions
|
|
added missing disable resource check fix
|
|
removed GetMessageW from kexbasen (already in kexbases)
|
|
fixed issue where installer wouldn't complete on fresh system
|
|
fixed BSOD or crashes on shutdown on certain configurations by preventing early unload
|
|
fixed compatibility sheet not working properly for shortcuts
|
|
implemented kernel32.IsProcessorFeaturePresent
|
|
fix: check if last element in merge list does repeat
|
|
fixed compilation issue with PSDK 2003
|
|
fixed Core not displaying error messages correctly
|
|
|
|
---------------------------------------
|
|
|
|
KernelEx v4.0 RC 1 by Xeno86
|
|
2009-03-10
|
|
|
|
First public release of KernelEx rewritten from scratch and based on new architecture
|