GetTimeSysInfoFunc コールバック関数 (timeprov.h)
システム時刻の状態情報を取得します。
構文
GetTimeSysInfoFunc Gettimesysinfofunc;
HRESULT Gettimesysinfofunc(
[in] TimeSysInfo eInfo,
[out] void *pvInfo
)
{...}
パラメーター
[in] eInfo
要求された状態情報。 このパラメーターには、次の値のいずれかを指定できます。
値 |
意味 |
- TSI_ClockPrecision
|
pvInfo パラメーターは、クロックの有効桁数 (log2 秒) を指定する符号付き__int32値です。
|
- TSI_ClockTickSize
|
pvInfo パラメーターは、クロック ティック サイズ (10^-7) 秒を指定する符号なし__int64値です。
|
- TSI_CurrentTime
|
pvInfo パラメーターは、1601 年 1 月 1 日午前 12 時から経過した (10^-7) 秒間隔 (UTC) の現在時刻を指定する符号なし__int64値です。
|
- TSI_LastSyncTime
|
pvInfo パラメーターは、1601 年 1 月 1 日午前 12 時から経過した (10^-7) 秒間隔 (UTC) の最後の同期時刻を指定する符号なし__int64値です。
|
- TSI_LeapFlags
|
pvInfo パラメーターは、差し迫ったうるう秒または同期の損失を示す BYTE 値です。 次の値が定義されています。
- 0 - 変更なし
- 1 - うるう秒を追加する
- 2 - うるう秒を減算する
- 3 - 同期されていません
|
- TSI_PhaseOffset
|
pvInfo パラメーターは、クロックの調整に使用される位相オフセットを秒単位で指定する符号付き__int64値です。
|
- TSI_PollInterval
|
pvInfo パラメーターは、ポーリング間隔 (log2 秒) を指定する符号付き__int32値です。
|
- TSI_ReferenceIdentifier
|
pvInfo パラメーターは、時刻ソースの参照識別子を NTP 形式で指定する DWORD 値です (IP アドレスまたはハードウェア ソースを記述する 4 文字の ASCII 文字列 (グローバル位置決めシステム (GPS) や WWVB など)。
|
- TSI_RootDelay
|
pvInfo パラメーターは、ルート遅延を (10^-7) 秒で指定する符号付き__int64値です。
|
- TSI_RootDispersion
|
pvInfo パラメーターは、ルート分散を (10^-7) 秒で指定する符号なし__int64値です。
|
- TSI_Stratum
|
pvInfo パラメーターは、このコンピューターをルート ソースから分離するネットワーク ホップの数を指定する BYTE 値です。 ハードウェア プロバイダーは 0 を返す必要があります。 NTP プロバイダーは、サンプルを提供したピアの階層を返す必要があります。
|
- TSI_TickCount
|
pvInfo パラメーターは、ティック数 (システムが開始されてからのミリ秒) を指定する符号なし__int64値です。 この値は最終的に折り返されるため、短い間隔の比較にのみ使用する必要があります。
|
- TSI_TSFlags
|
pvInfo パラメーターは、次のいずれかのタイム ソース フラグを指定する DWORD 値です。
- TSF_Authenticated
- TSF_Hardware
- TSF_IPv6
|
[out] pvInfo
その状態情報を受け取るバッファーへのポインター。 このデータの形式は 、eInfo の値によって異なります。
戻り値
関数が成功した場合、戻り値はS_OK。 それ以外の場合、戻り値は WinError.h で定義されているエラー コードの 1 つです。
精度を確保するために、時間プロバイダーは GetTimeSysInfoFunc を使用して、すべての時間関連情報を取得する必要があります。 時刻値は NTP パケットで直接使用しないでください。 これらは、1601 年 1 月 1 日午前 12 時を基準にして表されますが、NTP では 1900 年 1 月 1 日午前 12 時を基準にして時刻値を表します。
TimeProvOpen 関数は、この関数へのポインターを返します。
例
例については、「 サンプル 時間プロバイダー」を参照してください。
要件
要件 |
値 |
サポートされている最小のクライアント |
Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー |
Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム |
Windows |
ヘッダー |
timeprov.h |