GetSystemTimeAdjustment-Funktion (sysinfoapi.h)
Bestimmt, ob das System regelmäßige Zeitanpassungen auf seine Tageszeituhr anwendet, und ruft den Wert und den Zeitraum solcher Anpassungen ab.
Syntax
BOOL GetSystemTimeAdjustment(
[out] PDWORD lpTimeAdjustment,
[out] PDWORD lpTimeIncrement,
[out] PBOOL lpTimeAdjustmentDisabled
);
Parameter
[out] lpTimeAdjustment
Ein Zeiger auf eine Variable, die die Funktion auf die Anzahl von lpTimeIncrement 100-Nanosekundeneinheiten festlegt, die der Tageszeituhr für jeden Zeitraum hinzugefügt werden, der tatsächlich vom System gezählt wird. Dieser Wert hat nur eine Bedeutung, wenn lpTimeAdjustmentDisabledauf FALSE festgelegt ist.
[out] lpTimeIncrement
Ein Zeiger auf eine Variable, die die Funktion auf das Intervall in 100 Nanosekundeneinheiten festlegt, bei dem das System lpTimeAdjustment zur Tageszeituhr hinzufügt. Dieser Wert hat nur eine Bedeutung, wenn lpTimeAdjustmentDisabledauf FALSE festgelegt ist.
[out] lpTimeAdjustmentDisabled
Ein Zeiger auf eine Variable, die von der Funktion festgelegt wird, um anzugeben, ob eine regelmäßige Zeitanpassung wirksam ist.
Der Wert TRUE gibt an, dass die periodische Zeitanpassung deaktiviert ist und die Systemzeituhr mit der normalen Rate voranschreitet. In diesem Modus kann das System die Tageszeit mithilfe eigener interner Zeitsynchronisierungsmechanismen anpassen. Diese internen Zeitsynchronisierungsmechanismen können dazu führen, dass sich die Tageszeituhr während des normalen Verlaufs des Systembetriebs ändert, was zu spürbaren Zeitsprüngen führen kann, die vom System als notwendig erachtet werden.
Der Wert FALSE gibt an, dass regelmäßige Zeitanpassungen verwendet werden, um die Tageszeituhr anzupassen. Für jeden tatsächlich verstrichenen lpTimeIncrement-Zeitraum wird lpTimeAdjustment zur Tageszeit hinzugefügt. Wenn der LpTimeAdjustment-Wert kleiner als lpTimeIncrement ist, wird die Systemzeituhr langsamer als normal voranschreiten. Wenn der LpTimeAdjustment-Wert größer als lpTimeIncrement ist, wird die Tageszeit mit einer Geschwindigkeit höher als normal. Wenn lpTimeAdjustmentgleich lpTimeIncrement ist, wird die Tageszeituhr mit ihrer normalen Geschwindigkeit vorangestellt. Der LpTimeAdjustment-Wert kann durch Aufrufen von SetSystemTimeAdjustment festgelegt werden. Der LpTimeIncrement-Wert wird vom System beim Start festgelegt und ändert sich während des Systemvorgangs nicht. In diesem Modus wird das System das Zeitanpassungsschema nicht beeinträchtigen und versucht nicht, die Tageszeit über andere Techniken selbst zu synchronisieren.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Die Funktionen GetSystemTimeAdjustment und SetSystemTimeAdjustment können verwendet werden, um Algorithmen zu unterstützen, die die von GetSystemTime und GetLocalTime gemeldete Tageszeituhr mithilfe einer regelmäßigen Zeitanpassung mit einer anderen Zeitquelle synchronisieren möchten.
Mit der GetSystemTimeAdjustment-Funktion kann ein Aufrufer bestimmen, ob die periodische Zeitanpassung aktiviert ist, und wenn dies der Fall ist, den Betrag jeder Anpassung und die Zeit zwischen den Anpassungen abrufen. Mit der SetSystemTimeAdjustment-Funktion kann ein Aufrufer die regelmäßige Zeitanpassung aktivieren oder deaktivieren und den Wert des Anpassungsinkrements festlegen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | sysinfoapi.h (windows.h einschließen) |
Bibliothek | Kernel32.lib |
DLL | Kernel32.dll |