我正在尝试学习 Win32_EncryptableVolume 类功能(https://learn.microsoft.com/en-us/windows/win32/secprov/win32-encryptablevolume)。我为此创建了一个 VM,并使用简单的 Bitlocker 密码(无 TPM)保护它。
我创建了以下 PowerShell 脚本。我知道密钥保护器 ID 是正确的(使用 GetKeyProtectors 验证,并且 Bitlocker 使用 Bitlocker 创建的恢复密钥文件从该文件打印)。
# Namespace is per the Microsoft documentation
$wmi = Get-WmiObject -Namespace "ROOT\CIMV2\Security\MicrosoftVolumeEncryption" -Class Win32_EncryptableVolume
$keyProtectorID = "{C0B908CA-CC22-4A65-B61E-3257D4B5176C}"
#Folder path is only the folder, not the actual filename as specified in the documentation
$folderPath = "C:\tmp"
Invoke-WmiMethod -InputObject $wmi -Name SaveExternalKeyToFile -ArgumentList $keyProtectorID, $folderPath
#Output is as follows:
__GENUS : 2
__CLASS : __PARAMETERS
__SUPERCLASS :
__DYNASTY : __PARAMETERS
__RELPATH :
__PROPERTY_COUNT : 1
__DERIVATION : {}
__SERVER :
__NAMESPACE :
__PATH :
ReturnValue : 2147746291
PSComputerName :
WinErr 对错误 2147746291 给出以下输出:
# for decimal -2147221005 / hex 0x800401f3
CO_E_CLASSSTRING winerror.h
# Invalid class string
# 1 matches found for "2147746291"
我不确定类字符串是如何不正确的?