Win32_EncryptableVolume 类的 Encrypt 方法

Win32_EncryptableVolume 类的 Encrypt 方法开始加密完全解密的卷,或恢复部分加密卷的加密。 暂停或正在进行加密时,此方法的行为与 ResumeConversion 相同。 当解密暂停或正在进行时,此方法将停止解密并开始加密。

注意

如果驱动器是硬件加密的,则此方法不会加密数据。 相反,它会将带区状态从“始终解锁”设置为“已解锁”。 如果带被锁定、解锁或为只读,则驱动器被视为已加密。

 

Windows Vista: 不支持加密当前正在运行的操作系统卷以外的卷。

语法

uint32 Encrypt(
  [in, optional] uint32 EncryptionMethod,
  [in, optional] uint32 EncryptionFlags
);

参数

EncryptionMethod [in, 可选]

类型: uint32

一个无符号整数,指定用于加密卷的加密算法和密钥大小。 如果此参数大于零,并且卷已部分或完全加密, 则 EncryptionMethod 必须与卷的现有加密方法匹配。 如果此参数大于零,并且启用了具有有效值的相应组策略设置,则 EncryptionMethod 必须与组策略设置匹配。

有关可能 EncryptionMethod 值的列表,请参阅 GetEncryptionMethod 方法。

Windows 7 或更低版本默认值为:1 (AES_128_WITH_DIFFUSER) 。

Windows 8、Windows 8.1 或 Windows 10 版本 1507 的默认值为:3 (AES_128) 。

Windows 10版本 1511 或更高版本的默认值为:6 (XTS_AES_128) 。

EncryptionFlags [in, optional]

类型: uint32

描述加密行为的标志。

Windows 7、Windows Server 2008 R2、Windows Vista 企业版 和 Windows Server 2008:此参数不可用。

32 位与当前定义的以下位的组合。

含义
0x00000001
启动新的加密过程时,在仅数据加密模式下执行卷加密。 如果加密已暂停或停止,则调用 Encrypt 方法将有效地恢复转换,并忽略此位的值。 仅当 EncryptEncryptAfterHardwareTest 方法从完全解密状态开始加密、正在进行解密或解密暂停状态时,此位才有效。 如果此位为零,表示未设置,则在启动新的加密过程时,将执行全模式转换。
0x00000002
对卷可用空间执行按需擦除。 仅当卷当前未转换或擦除且处于“加密”状态时,才允许使用此位集调用 Encrypt 方法。
0x00010000
同步执行请求的操作。 调用将阻止,直到请求的操作已完成或中断。 只有 Encrypt 方法支持此标志。 当调用 Encrypt 以恢复停止或中断的加密或擦除时,或者加密或擦除正在进行时,可以指定此标志。 这允许调用方以同步方式继续等待进程完成或中断。

 

返回值

类型: uint32

此方法返回以下代码之一,如果失败,则返回另一个错误代码。

此方法会立即返回。 如果卷已完全加密且未返回其他错误,则此方法返回 0。

返回代码/值 说明
S_OK
0 (0x0)
方法成功。
E_INVALIDARG
2147942487 (0x80070057)
提供 EncryptionMethod 参数,但不在已知范围内或与当前组策略设置不匹配。
FVE_E_CANNOT_ENCRYPT_NO_KEY
2150694958 (0x8031002E)
卷不存在加密密钥。 使用 DisableKeyProtectors 方法禁用密钥保护程序,或者使用以下方法之一为卷指定密钥保护程序:
Windows Vista: 当卷不存在加密密钥时,将改为返回ERROR_INVALID_OPERATION。 十进制值为 4317,十六进制值0x10DD。
FVE_E_CANNOT_SET_FVEK_ENCRYPTED
2150694957 (0x8031002D)
提供的加密方法与部分或完全加密卷的加密方法不匹配。 若要继续加密,请将 EncryptionMethod 参数留空或使用值零。
FVE_E_CLUSTERING_NOT_SUPPORTED
2150694942 (0x8031001E)
无法加密卷,因为此计算机配置为服务器群集的一部分。
FVE_E_LOCKED_VOLUME
2150694912 (0x80310000)
卷已锁定。
FVE_E_POLICY_PASSWORD_REQUIRED
2150694956 (0x8031002C)
未指定“数字密码”类型的密钥保护程序。 组策略需要备份恢复信息以Active Directory 域服务。 若要添加至少一个该类型的密钥保护程序,请使用 ProtectKeyWithNumericalPassword 方法。

 

备注

如果根据 Windows 7 和 Windows Vista 企业版 定义) 不使用第二个可选参数 (此方法,该方法将始终启动完全模式转换,以保持向后兼容行为。 这样,在 Windows 8 和 Windows Server 2012 中添加了第二个可选参数,就不会破坏现有应用程序和脚本的安全预期。

可以调用 GetConversionStatus 来确定加密是否正在进行,以及加密卷的百分比。

卷完全加密后,如果已添加并启用密钥保护程序,卷的保护状态将更改为“打开”。

托管对象格式 (MOF) 文件包含 Windows Management Instrumentation (WMI) 类的定义。 MOF 文件未作为 Windows SDK 的一部分安装。 使用 服务器管理器添加关联角色时,它们安装在服务器上。 有关 MOF 文件的详细信息,请参阅 托管对象格式 (MOF)

要求

要求
最低受支持的客户端
Windows Vista 企业版,Windows Vista 旗舰版 [仅限桌面应用]
最低受支持的服务器
Windows Server 2008 [仅限桌面应用]
命名空间
Root\CIMV2\Security\MicrosoftVolumeEncryption
MOF
Win32_encryptablevolume.mof

另请参阅

Win32_EncryptableVolume