SystemRestore 类的 CreateRestorePoint 方法
创建还原点。
此方法是 SRSetRestorePoint 函数的可编写脚本等效项。
语法
uint32 CreateRestorePoint(
[in] String Description,
[in] uint32 RestorePointType,
[in] uint32 EventType
);
parameters
-
说明 [in]
-
要显示的说明,以便用户可以轻松识别还原点。 ANSI 字符串的最大长度为MAX_DESC。 Unicode 字符串的最大长度为 MAX_DESC_W。 有关详细信息,请参阅 还原点说明文本。
-
RestorePointType [in]
-
还原点的类型。 此成员可以是以下值之一。
还原点类型 含义 - APPLICATION_INSTALL
- 0
已安装应用程序。 - APPLICATION_UNINSTALL
- 1
应用程序已卸载。 - DEVICE_DRIVER_INSTALL
- 10
已安装设备驱动程序。 - MODIFY_SETTINGS
- 12
应用程序已添加或删除功能。 - CANCELLED_OPERATION
- 13
应用程序需要删除它创建的还原点。 例如,当用户取消安装时,应用程序将使用此标志。 -
EventType [in]
-
事件的类型。 此成员可以是以下值之一。
事件类型 含义 - BEGIN_NESTED_SYSTEM_CHANGE
- 102
系统更改已开始。 后续嵌套调用不会创建新的还原点。
后续调用必须使用 END_NESTED_SYSTEM_CHANGE,而不是END_SYSTEM_CHANGE。- BEGIN_SYSTEM_CHANGE
- 100
系统更改已开始。
后续调用必须使用 END_SYSTEM_CHANGE,而不是END_NESTED_SYSTEM_CHANGE。- END_NESTED_SYSTEM_CHANGE
- 103
系统更改已结束。 - END_SYSTEM_CHANGE
- 101
系统更改已结束。
返回值
如果方法成功,则返回值S_OK。 否则,方法将返回 WinError.h 中定义的 COM 错误代码之一。
备注
**Windows 8: **
新的注册表项使应用程序开发人员能够更改还原点创建的频率。
应用程序应创建此密钥以使用它,因为它不会在系统中预先存在。 如果密钥不存在,则默认情况下将应用以下内容。 如果应用程序调用 CreateRestorePoint 方法来创建还原点,如果在过去 24 小时内创建了任何还原点,则 Windows 将跳过创建此新还原点。 CreateRestorePoint 方法返回S_OK。
开发人员可以在注册表项 HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore 下编写创建 DWORD 值 SystemRestorePointCreationFrequency 的应用程序。 此注册表项的值可以更改还原点创建的频率。 此注册表项的值可以更改还原点创建的频率。
如果应用程序调用 CreateRestorePoint 来创建还原点,并且注册表项值为 0,则系统还原不会跳过创建新还原点。
如果应用程序调用 CreateRestorePoint 来创建还原点,并且注册表项值为整数 N,则系统还原将跳过创建新还原点(如果前 N 分钟创建了任何还原点)。
示例
'CreateRestorePoint Method of the SystemRestore Class
'Creates a restore point. Specifies the beginning and
'the ending of a set of changes so that System Restore
'can create a restore point.This method is the
'scriptable equivalent of the SRSetRestorePoint function.
Set Args = wscript.Arguments
If Args.Count() > 0 Then
RpName = Args.item(0)
Else
RpName = "Vbscript"
End If
Set obj = GetObject("winmgmts:{impersonationLevel=impersonate}!root/default:SystemRestore")
If (obj.CreateRestorePoint(RpName, 0, 100)) = 0 Then
wscript.Echo "Success"
Else
wscript.Echo "Failed"
End If
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows XP [仅限桌面应用] |
最低受支持的服务器 |
无受支持的版本 |
命名空间 |
Root\Default |
MOF |
|