Ricerca…


introduzione

La documentazione per DateTime::UniversalTime afferma:

"Un intero con segno a 64 bit che rappresenta un punto nel tempo come il numero di intervalli di 100 nanosecondi prima o dopo la mezzanotte del 1 gennaio 1601 (secondo il calendario gregoriano)."

È lo stesso della struttura FILETIME Win32 che è necessario convertire in un valore lungo di 100 nanosecondi e impostarlo nel campo DateTime::UniversalTime .

GetCurrentDateTime ()

#include <windows.h>

static Windows::Foundation::DateTime GetCurrentDateTime() {
    // Get the current system time
    SYSTEMTIME st;
    GetSystemTime(&st);

    // Convert it to something DateTime will understand
    FILETIME ft;
    SystemTimeToFileTime(&st, &ft);

    // Conversion to DateTime's long long is done vie ULARGE_INTEGER
    ULARGE_INTEGER ui;
    ui.LowPart = ft.dwLowDateTime;
    ui.HighPart = ft.dwHighDateTime;

    DateTime currentDateTime;
    currentDateTime.UniversalTime = ui.QuadPart;
    return currentDateTime;
}


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow