Disable-ComputerRestore не отключает защиту системы - PullRequest
0 голосов
/ 23 декабря 2011

Я программно пытаюсь включить / отключить восстановление системы в Windows 7. У меня включено восстановление системы, работающее «Enable-ComputerRestore», но отключение вызывает проблемы.

Disable-ComputerRestore -drive "C:\"

не устанавливает для моего диска C: «Отключение защиты системы». Вместо этого он устанавливает «Только восстанавливать предыдущие версии файлов». Кто-нибудь знает, почему это может происходить?

Ответы [ 2 ]

0 голосов
/ 26 декабря 2011

Я решаю это с помощью WMI и следующего кода C #, адаптированного из здесь .

    public void disableSystemRestore(string drive)
    {
        try
        {
            ManagementScope scope = new ManagementScope("\\\\localhost\\root\\default");
            ManagementPath path = new ManagementPath("SystemRestore");
            ObjectGetOptions options = new ObjectGetOptions();
            ManagementClass process = new ManagementClass(scope, path, options);
            ManagementBaseObject inParams = process.GetMethodParameters("Disable");
            inParams["Drive"] =  drive;
            ManagementBaseObject outParams = process.InvokeMethod("Disable", inParams, null);
        }
        catch(ManagementException err)
        {
            MessageBox.Show("An error occurred while trying to execute the WMI method: " + err.Message);
        }
    }
0 голосов
/ 23 декабря 2011

Вы просто должны сделать это локально (без удаленного доступа) как администратор:

enter image description here

Команда

enter image description here

Будьте осторожны, вы должны закрыть свойства системы windo и снова открыть ее, чтобы увидеть результат.

enter image description here

...