检查 Bitlocker 的状态为返回 null



>我创建了用于检查 bitlocker 是否在机器中启用的代码块,遵循本主题:在没有管理员的情况下从 C# 以编程方式检测 BitLocker 我几乎在机器上工作得很好,但是从现在开始有一个机器返回空值:

IShellProperty prop = ShellObject.FromParsingName(rootDrive).Properties.GetProperty("System.Volume.BitLockerProtection");
int? bitLockerProtectionStatus = (prop as ShellProperty<int?>).Value; // bitLockerProtectionStatus return null

这台机器已经安装了位锁。我已经使用命令"manage-bde -status C:"和返回状态"完全加密"进行了检查。

上述主题仅提及 如果此属性的值为 1、3 或 5,则在驱动器上启用 BitLocker。任何其他值都被视为关闭。 这个值如何返回空值,我在哪里可以在机器中检查这个值("System.Volume.BitLockerProtection"(?

我的代码来检测 bitlocker 驱动器:

if (!new DriveInfo(DriveName).IsReady)
{
Process p = Process.Start(new ProcessStartInfo()
{
FileName = "cmd.exe",
Arguments = " /C " + DriveName,
Verb = "runas",
UseShellExecute = false,
RedirectStandardOutput = true,
RedirectStandardError = true
});
string error = p.StandardError.ReadToEnd();
string console = p.StandardOutput.ReadToEnd();
bool IsBitLockerDrive = (error + console).Contains("BitLocker");//pw protected drive
}

相关内容

  • 没有找到相关文章

最新更新