|
// *********************************************************
// 指定日からシステム日付までの経過日数
// 戻り値 : 無し
// *********************************************************
int LboxInfo::DateDiff( SYSTEMTIME *st )
{
int nRet,nFrom,nTo;
SYSTEMTIME stTo;
SYSTEMTIME stNow;
CopyMemory( &stTo, st, sizeof( SYSTEMTIME ) );
GetLocalTime( &stNow );
if ( stTo.wMonth == 1 ) {
stTo.wYear = stTo.wYear - 1;
stTo.wMonth = 13;
}
if ( stTo.wMonth == 2 ) {
stTo.wYear = stTo.wYear - 1;
stTo.wMonth = 14;
}
if ( stNow.wMonth == 1 ) {
stNow.wYear = stNow.wYear - 1;
stNow.wMonth = 13;
}
if ( stNow.wMonth == 2 ) {
stNow.wYear = stNow.wYear - 1;
stNow.wMonth = 14;
}
nFrom =
stNow.wYear * 365 +
stNow.wYear / 4 -
stNow.wYear / 100 +
stNow.wYear / 400 +
30 * stNow.wMonth +
( stNow.wMonth + 1 ) * 3 / 5 +
stNow.wDay - 34;
nTo =
stTo.wYear * 365 +
stTo.wYear / 4 -
stTo.wYear / 100 +
stTo.wYear / 400 +
30 * stTo.wMonth +
( stTo.wMonth + 1 ) * 3 / 5 +
stTo.wDay - 34;
nRet = nFrom - nTo;
return nRet;
}
| |