Skip to content

Commit 0fd1c66

Browse files
Create README.md
1 parent d7592b5 commit 0fd1c66

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

README.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# Uptime Faker
2+
Generic Windows library designed to help detecting issues related to high PC uptime.
3+
4+
## Reason for creating this plugin
5+
The most accurate timers in Windows all count time from the time Windows has started.
6+
Historically, these values often were relatively small, as people usually shut down their PC at night,
7+
and therefore uptime stayed low. However, with the introduction of Fast Startup in Windows 8,
8+
uptime stopped resetting after shutting down the PC (since it's now effectively a partial hibernation).
9+
This led to uptimes inflating noticeably for most people, as with Fast Startup enabled it resets **only** on a full PC reboot.
10+
11+
Turns out, older software often cannot handle high uptimes.
12+
Much to my surprise, Application Verifier did not have any options to help detecting such issues by faking high uptime,
13+
I decided to create this plugin.
14+
15+
## Usage
16+
This plugin is a Detours plugin. Therefore, it can be injected into the process with
17+
[DetourCreateProcessWithDlls](https://github.com/Microsoft/Detours/wiki/DetourCreateProcessWithDlls)
18+
or by any other means.
19+
It is also possible to inject UptimeFaker by using [Ultimate ASI Loader](https://github.com/ThirteenAG/Ultimate-ASI-Loader/releases),
20+
but file extension needs to be renamed to ASI first.
21+
22+
Hooked WinAPI functions and the amount of uptime added can be configured with a provided `UptimeFaker.ini` file.
23+
24+
## Supported functions
25+
* From **kernel32.dll**:
26+
* QueryPerformanceCounter
27+
* GetTickCount
28+
* GetTickCount64
29+
* From **winmm.dll**:
30+
* timeGetTime
31+
* timeGetSystemTime
32+
33+
## Third party dependencies
34+
This project uses [Detours](https://github.com/Microsoft/Detours) to hook into WinAPI time functions.

0 commit comments

Comments
 (0)