Releases: 0xKate/ByteWeaver
1.0.49
Version 1.0.49 Changelog:
- Change CreateDetour & CreatePatch now return a shared_ptr to the created modification.
Version 1.0.48 Changelog:
- Add IsLocationModifiedFast for optimized speed in tight loops.
Version 1.0.47 Changelog:
- Add integer overflow protection to IsLocationModified.
- Add DoRangesIntersect helper function.
- Cleanup README.md code examples.
Full Changelog: 1.0.46...1.0.49
Release 1.0 (r46)
Release 1.0 (r46) Changelog:
- Add Documentation
Version 0.5.39-45 Changelog:
- Delete All functions marked as
deprecated - Migrate Byteweaver.h -> ByteWeaverPCH.h
- Add new ByteWeaver.h now includes all of ByteWeaver namespace
- CMAKE: Mark ByteWeaverPCH.h as precompiled header
- Delete ByteWeaver.cpp
- Move SearchResults into ByteWeaver namespace
- Cleanup includes
- Fix LogUtils and ByteWeaver LogLevel conflict
Now #include <ByteWeaver.h> works as should be expected.
Version 0.5.38 Changelog:
- DebugTools: Remove Broken ModuleDumper code.
- DebugTools: Fix x86 Stacktrace.
- DetourMacros: Remove
Detour Name##Detourartifact from switching to CreateDetour.
0.5.37a
Version 0.5.37a Changelog
- Remove IsEnabled
- Remove All Enable/Disable functionality.
- Rename IsPatched -> IsModified
Removed the IsEnabled code to keep it simple and less bloated. You can use GroupID or wrap Patch/Detour to only add it to the MemoryManager when its Enabled per your code.
0.5.36b
0.5.35
Version 0.5.35 Changelog
- Fix wrong ModType issue for patches.
Version 0.5.34 Changelog
- Add new class type
MemoryModificationwhich holds common fields shared between Detours and Patches - Add new enum for
ModType::Detour&ModType::Patch - Migrated
MemoryManagerto use the base classMemoryModification - Migrated
Patch&Detourto inheritMemoryModification - Add
GroupIDfield toMemoryModification : uint16_t0x0000 is the default group. - Add
Typefield toMemoryModification : ModType - Add canonical way to create patches and detours via
MemoryManager::CreatePatch&MemoryManager::CreateDetour
MemoryManager::Detours & MemoryManager::Patches, but gains access to MemoryManager::Mods
Use MemoryManager::GetModsByType(const ModType modType) if you want a list of a specific type.
Everything else remains backwards compatible.
Please see header here for full API.
0.4.33a
Version 0.4.33a Changelog:
- Add optional Patch/Detour field (Key) [Auto-Added by MemoryManager]
- Add Warn user when Patch/Detour applied without MemoryManager
- Add Detour now logs Size and Key
- Add Patch now logs Key
Version 0.4.32 Changelog:
- Add GetDetourSize using DetourCopyInstruction to get the exact size a detour will modify.
- Fix ByteWeaver default log fallback.
- Fix issue with AddressEntry::Verify()
Version 0.4.31 Changelog:
- Update Readme.md
⚠️ - All versions <0.4.32 Do not have accurate Detour-Size field, and therefore IsLocationModified was not accurate for detours. We now get exact detour size via DetourCopyInstruction.
0.4.30
0.4.29
Version 0.4.29 Changelog:
- Move Detour bytes copy from init, to apply.
- Fix Detour &failedPointer, now logs correctly.
- Add ConsoleLogger.exe to ByteWeaver builds.
- Add FileExists to FileManager.
Version 0.4.28 Changelog:
- Add Thread Synchronization to patch & detour management.
Version 0.4.26
- Add Size member to Detour
- Enforce Detour size on x86 and x64 for IsLocationModified (Fixes -1 byte off on x86 and -6 bytes off on x64)
Version 0.4.24 Changelog:
- Fix Detours architecture handling (#1)
- Enforce naming conventions across projects.
- Rename Shared.h → LogUtils.h (reduce ambiguity).
- Add OriginalBytes copy inside Detour wrapper.
- General ByteWeaver cleanup.
Version 0.3.22 Changelog:
- Add detour fail cleanup
- Add DebugTools only in debug builds