Функция SRSetRestorePointA (srrestoreptapi.h)
Задает начало и окончание набора изменений, чтобы система может создать точку восстановления.
Для эквивалента скрипта см. CreateRestorePoint.
Синтаксис
BOOL SRSetRestorePointA(
[in] PRESTOREPOINTINFOA pRestorePtSpec,
[out] PSTATEMGRSTATUS pSMgrStatus
);
Параметры
[in] pRestorePtSpec
Указатель на структуру RESTOREPOINTINFO, указывающую точку восстановления.
[out] pSMgrStatus
Указатель на структуру STATEMGRSTATUS
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение TRUE. llSequenceNumber член pSMgrStatus получает порядковый номер точки восстановления.
Если функция завершается ошибкой, возвращаемое значение FALSE. Элемент nStatuspSMgrStatus получает сведения об ошибке.
Замечания
Необходимо инициализировать безопасность COM, чтобы разрешить networkService, LocalService и System вернуться в любой процесс, использующий SRSetRestorePoint. Это необходимо для правильной работы SRSetRestore Point. Сведения о настройке вызовов COM для CoInitializeEx и CoInitializeSecurityсм. в using System Restore.
Эту функцию нельзя вызвать в безопасном режиме. Он также завершается ошибкой, если восстановление системы отключено (см. раздел Отключить).
При вызове этой функции восстановление системы принимает полный снимок реестра и других системных баз данных.
Приложения не должны вызывать функции восстановления системы с помощью динамической компоновки во время загрузки. Вместо этого используйте функцию loadLibrary
Создайте точки восстановления непосредственно перед изменением системы, вызвав SRSetRestorePoint с dwEventType членом структуры RESTOREPOINTINFO значение BEGIN_SYSTEM_CHANGE. После завершения изменений системы вызовите SRSetRestorePoint с dwEventType для END_SYSTEM_CHANGE.
Если пользователь отменяет установку приложения, установщик может удалить точку восстановления, созданную при начале установки. Удаление точки восстановления является необязательным и может предотвратить восстановление пользователя от непреднамеренных изменений, внесенных установщиком во время отмены. Если установщик удаляет точку восстановления, она может вызвать функцию SRRemoveRestorePoint, или вызов SRSetRestorePoint с dwRestorePointType CANCELLED_OPERATION, dwEventType END_SYSTEM_CHANGE и llSequenceNumber, возвращаемое начальным вызовом SRSetRestorePoint.
Будьте осторожны при выполнении вложенных вызовов SRSetRestorePoint. Дополнительные сведения см. в вложенных вызовов SRSetRestorePoint.
Windows 8:
Новый раздел реестра позволяет разработчикам приложений изменять частоту создания точки восстановления.
Приложения должны создать этот ключ, чтобы использовать его, так как он не будет существовать в системе. Если ключ не существует, применяется по умолчанию. Если приложение вызывает функцию SRSetRestorePoint для создания точки восстановления, Windows пропускает создание этой точки восстановления, если все точки восстановления были созданы за последние 24 часа. Системное восстановление задает
Функция SRSetRestorePoint
Разработчики могут создавать приложения, создающие значение DWORD
Если приложение вызывает SRSetRestorePoint для создания точки восстановления, а значение раздела реестра равно 0, восстановление системы не пропускает создание новой точки восстановления.
Если приложение вызывает SRSetRestorePoint для создания точки восстановления, а значение раздела реестра является целым числом N, восстановление системы пропускает создание точки восстановления, если какие-либо точки восстановления были созданы за предыдущие N минуты.
Windows 8:
Восстановление системы, работающее в Windows 8, отслеживает файлы в томе загрузки, которые относятся только к восстановлению системы. Моментальные снимки тома загрузки, созданного системой восстановления, запущенного в Windows 8, могут быть удалены, если моментальный снимок впоследствии предоставляется более ранней версией Windows. Обратите внимание, что хотя существует только один системный том, существует один загрузочный том для каждой операционной системы в многозагрузочной системе.
Разработчики могут создавать приложения, создающие
Примеры
Пример см. в разделе Использованиевосстановления системы.
Заметка
Заголовок srrestoreptapi.h определяет SRSetRestorePoint как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [только классические приложения] |
минимальный поддерживаемый сервер | Не поддерживается |
целевая платформа | Виндоус |
заголовка | srrestoreptapi.h |
DLL | SrClient.dll |