For this instance of displaying the values as a "date" rather than "elapsed time", the approach is similar, but slightly different with Uptime and USER_LOGONTIME.
Uptime by default is a number of seconds that have elapsed since a full restart of the computer, so you need to subtract that from "now" in order to get full date/time Timestamp value to use in the Time measure to it convert to a "date".
USER_LOGONTIME is already a full date / time Timestamp value, so you don't need any subtraction. Just use the Time measure to convert it to a "date".
Code: Select all
[Rainmeter]
Update=1000
DynamicWindowSize=1
AccurateText=1
[Variables]
[MeasureDayStarted]
Measure=Plugin
Plugin=SysInfo
SysInfoType=USER_LOGONTIME
UpdateDivider=-1
[MeasureDateStarted]
Measure=Time
TimeStamp=[MeasureDayStarted:]
Format=%A, %B %#d, %Y %#I:%M %p
UpdateDivider=-1
DynamicVariables=1
[MeterDate]
Meter=String
MeasureName=MeasureDateStarted
FontSize=11
FontWeight=400
FontColor=255,255,255,255
SolidColor=47,47,47,255
Padding=5,5,5,5
AntiAlias=1
This is because Windows treats Uptime as "how long ago?" (seconds) and treats USER_LOGONTIME as "when?" (timestamp).
Note that I use UpdateDivider=-1 with the values for USER_LOGONTIME, as it's value that can't possibly change while your system is running. With Uptime, we don't do that, as the number of elapsed seconds since a restart is constantly changing.