Win32_EncryptableVolume для получения статуса битблока в С#

В С# я использую следующий код, чтобы получить статус BitLocker. Когда я запускаю сценарий, он говорит: "Исключение управления было необработанным. Есть идеи?

ManagementClass objectSearcher;
 List<string> BitLocker = new List<string>();

 objectSearcher = new ManagementClass("Win32_EncryptableVolume");
 foreach (var item in objectSearcher.GetInstances())
 {
 try
 {
 BitLocker.Add(item["DeviceID"].ToString());
 BitLocker.Add(item["ProtectionStatus"].ToString());

 }
 catch
 {
 BitLocker.Add("Error, could not retrieve data. \n");
 }

 }
</string></string>

1 ответ

Я считаю, что вам нужно сначала установить путь и область действия, например:

var path = new ManagementPath(@"\ROOT\CIMV2\Security\MicrosoftVolumeEncryption") { ClassName = "Win32_EncryptableVolume" };
var scope = new ManagementScope(path);
path.Server = Environment.MachineName;
var objectSearcher = new ManagementClass(scope, path, new ObjectGetOptions());

licensed under cc by-sa 3.0 with attribution.