Sök…


Introduktion

Dokumentationen för DateTime::UniversalTime anger:

"Ett 64-bitars signerat heltal som representerar en tidpunkt som antalet intervaller på 100 nanosekunder före eller efter midnatt den 1 januari 1601 (enligt den gregorianska kalendern)."

Detta är samma som Win32 FILETIME strukturen som du behöver konvertera till ett långt långt värde på 100 nanosekunder och ställa in det i DateTime::UniversalTime fältet.

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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow