Sono consapevole del fatto che per la precisione temporale, funzioni come timeGetTime, timeBeginPeriod, QueryPerformanceCounter ecc. Sono eccezionali, offrendo sia una buona precisione di precisione &, ma solo in base al tempo-poiché- avvio, senza collegamento diretto all'orologio.Registro con data e ora con precisione e risoluzione in Windows C++
Tuttavia, non desidero cronometrare gli eventi in quanto tali. Voglio essere in grado di produrre un timestamp esatto (ora locale) in modo che possa visualizzarlo in un file di registro, ad esempio 31-12-2010 12: 38: 35.345, per ogni voce effettuata. (Ho bisogno della precisione millisecondo)
Le funzioni standard di ora di Windows, come GetLocalTime, mentre forniscono valori in millisecondi, non hanno una risoluzione di millisecondo, a seconda del sistema operativo in esecuzione. Sto usando XP, quindi non posso aspettarmi molto meglio di una risoluzione di 15ms.
Quello che mi serve è un modo per ottenere il meglio da entrambi i mondi, senza creare un grande sovraccarico per ottenere l'output richiesto. Metodi/calcoli troppo grandi significherebbero che il registratore inizierebbe a consumare troppo tempo durante il suo funzionamento.
Quale sarebbe il modo migliore/più semplice per farlo?
Interessante il punto sul casting a 64 bit perché non ne ero a conoscenza. Significa che la mia soluzione corrente è bloccata a 32 bit mentre sto usando (__int64 *) e ft – Dave
Anche se questo non è quello che ho trovato, è sicuramente più vicino alla logica che ho usato (anche se in un 32- versione bit bloccata). Questa risposta è probabilmente meglio però! – Dave