Не удается прочитать из класса WMI RSOP_RegistryPolicySetting в пространстве имен root \ RSOP - PullRequest
1 голос
/ 18 ноября 2009

Класс задокументирован в

http://msdn.microsoft.com/en-us/library/aa375050%28VS.85%29.aspx

И с этой страницы кажется, что это не абстрактный класс:

http://msdn.microsoft.com/en-us/library/aa375084%28VS.85%29.aspx

Но всякий раз, когда я запускаю приведенный ниже код, в ManagementObjectSearcher.Get () получается исключение «Недопустимый класс» Так существует этот класс или нет?

ManagementScope scope;
ConnectionOptions options = new ConnectionOptions();
options.Username = tbUsername.Text;
options.Password = tbPassword.Password;
options.Authority = String.Format("ntlmdomain:{0}", tbDomain.Text);
scope = new ManagementScope(String.Format("\\\\{0}\\root\\RSOP", tbHost.Text), options);
scope.Connect();
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, new ObjectQuery("SELECT * FROM RSOP_RegistryPolicySetting"));
foreach (ManagementObject queryObj in searcher.Get())
{
    wmiResults.Text += String.Format("id={0}\n", queryObj["id"]);
    wmiResults.Text += String.Format("precedence={0}\n", queryObj["precedence"]);
    wmiResults.Text += String.Format("registryKey={0}\n", queryObj["registryKey"]);
    wmiResults.Text += String.Format("valueType={0}\n", queryObj["valueType"]);
}

В первой ссылке выше в качестве требования указано что-то, что называется «MOF»: «Rsopcls.mof». Это то, что я должен иметь, но не должен? Как мне получить это? Это необходимо в запрашивающей машине или запрашиваемой машине? Или оба?

У меня есть две копии этого файла:

C:\Windows>dir rsop*.mof /s
 Volume in drive C has no label.
 Volume Serial Number is 245C-A6EF

 Directory of C:\Windows\System32\wbem

02/11/2006  05:22           100.388 rsop.mof
               1 File(s)        100.388 bytes

 Directory of C:\Windows\winsxs\x86_microsoft-windows-grouppolicy-base-mof_31bf3856ad364e35_6.0.6001.18000_none_f2c4356a12313758

19/01/2008  07:03           100.388 rsop.mof
               1 File(s)        100.388 bytes

     Total Files Listed:
               2 File(s)        200.776 bytes
               0 Dir(s)   6.625.456.128 bytes free

1 Ответ

0 голосов
/ 19 ноября 2009

Duh. Я использовал неправильное пространство имен. Это был root \ RSOP \ Computer.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...