Buscar..


Introducción

La documentación para los estados DateTime::UniversalTime :

"Un entero con signo de 64 bits que representa un punto en el tiempo como el número de intervalos de 100 nanosegundos anteriores o posteriores a la medianoche del 1 de enero de 1601 (según el calendario gregoriano)".

Esto es lo mismo que la estructura de Win32 FILETIME que necesita convertir a un valor largo de 100 nanosegundos y establecerlo en el 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
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow