This repository was archived by the owner on May 16, 2025. It is now read-only.
Enhance Timers to ensure compatibility with more Windows versions #553
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I've done some work to the Timers.py plugin to enable it to function on different builds of Windows.
I've updated local type definitions of _KTIMER_TABLE_ENTRY to work on both 32 and 64bit targets, and ensured they don't get applied if they aren't needed (ie, if the OS overlay already defines these structures). I've also added more signatures for different versions of windows.
I also found that the DPC validation code doesn't work properly in some older Windows versions, and so I've commented it out. I've left the code in there because filtering on valid DPC is a useful feature, and it works on most versions of Windows.
I've tested this code and found it working on the following builds:
Hope this is useful!