Функция TimeProvCommand (timeprov.h)
Функция обратного вызова, вызываемая диспетчером поставщика времени для отправки команд поставщику времени.
Синтаксис
HRESULT TimeProvCommand(
[in] TimeProvHandle hTimeProv,
[in] TimeProvCmd eCmd,
[in] TimeProvArgs pvArgs
);
Параметры
[in] hTimeProv
Дескриптор поставщика времени. Функция TimeProvOpen получает этот дескриптор.
[in] eCmd
Отправляемая команда. Этот параметр может принимать одно из указанных ниже значений.
Get-Help | Значение |
---|---|
|
Поставщик времени должен вернуть собранные образцы времени. Если доступных данных нет, поставщик не должен возвращать выборки. Дополнительные сведения см. в разделе Комментарии.
Параметр pvArgs является указателем на структуру TpcGetSamplesArgs . Диспетчер поставщика времени предоставляет буфер для примеров. Если буфер pvArgs слишком мал, поставщик должен предоставить как можно больше выборок и возвратить ERROR_INSUFFICIENT_BUFFER. Любые другие коды ошибок, возвращаемые поставщиком, игнорируются. |
|
Топология сети изменилась. Сетевые поставщики должны пересмотреть параметры сети и убедиться, что они могут получить доступ к своим источникам.
Параметр pvArgs указывает, было ли изменение запрошено пользователем (NTC_UserRequested) или системой (NTC_Default). |
|
Зарезервировано для последующего использования. |
|
Интервал опроса изменился. Поставщик времени должен вызвать функцию GetTimeSysInfo , чтобы получить новое значение.
Параметр pvArgs не используется. Любая ошибка, возвращаемая поставщиком, игнорируется. |
|
Система завершает работу. Поставщик времени должен выйти в течение пяти секунд.
Параметр pvArgs не используется. |
|
Системные часы были настроены внезапно, поэтому поставщик времени должен отменить все сохраненные метки времени.
Параметр pvArgs указывает, был ли скачок времени запрошен пользователем (TJF_UserRequested) или системой (TJF_Default). |
|
Поставщик времени должен проверить, изменились ли данные конфигурации конкретного приложения, хранящиеся в реестре.
Параметр pvArgs не используется. Любая ошибка, возвращаемая поставщиком, игнорируется. |
[in] pvArgs
Указатель на буфер, указывающий сведения о команде. Формат этих данных зависит от значения eCmd.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет S_OK. В противном случае возвращаемое значение является одним из кодов ошибок, определенных в WinError.h.
Комментарии
Поставщик времени никогда не должен занимать больше половины секунды, чтобы вернуться из этого вызова.
При обработке команды TPC_GetSamples поставщик должен вернуть по одному образцу для каждого отслеживаемого источника. Таким образом, поставщик оборудования должен возвращать один образец, в то время как поставщик сети, например NTP, может возвращать несколько выборок. Поставщик не должен возвращать несколько выборок из одного источника; он должен возвращать лучший образец из своего кэша примеров для источника. Поставщик может возвращать тот же образец при последующих вызовах при условии, что данные не были изменены.
Примеры
Пример см. в разделе Пример поставщика времени.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | timeprov.h |