Winapi 获取两个SYSTEMTIME变量之间的差
例如,我的代码如下Winapi 获取两个SYSTEMTIME变量之间的差,winapi,systemtime,Winapi,Systemtime,例如,我的代码如下 void main() { SYSTEMTIME LocalTime_Start = { 0 }; GetLocalTime( &LocalTime_Start ); SYSTEMTIME LocalTime_End = { 0 }; // Some program Statements GetLocalTime( &LocalTime_End );
void main()
{
SYSTEMTIME LocalTime_Start = { 0 };
GetLocalTime( &LocalTime_Start );
SYSTEMTIME LocalTime_End = { 0 };
// Some program Statements
GetLocalTime( &LocalTime_End );
// Now i want difference of two i.e.
// can i do as following
SYSTEMTIME localTime_diff = LocalTime_End - LocalTime_Start;
// guys please let me know how to achieve that asap...thanks a lot in advance
}
使用将两个SYSTEMTIME结构转换为FILETIME
FILTETIME ft;
::SystemTimeToFileTime(&sysTime, &ft);
使用以下命令将FILETIME转换为ULONGLONG:
ULARGE_INTEGER uli;
uli.LowPart = ft.dwLowDateTime ;
uli.HighPart= ft.dwHighDateTime;
ULONGLONG uft= uli.QuadPart;
减去ULONGLONGs得到以Hectonanosc为单位的时间差在这种情况下不适用,但如果输入SYSTEMTIME表示零时间(即其所有成员均为0),SystemTimeToFileTime将失败。