1 (изменено: im2002, 2012-10-01 16:08:03)

Тема: JS, WSH: изменение типа запуска службы

Не могу изменить тип запуска у некоторых служб Windows, к примеру такая служба как "avast! Antivirus" не хочет менять тип запуска ни при использовании методов объекта Shell.Application ни при использовании WMI. Ниже приведён пример, как пытался сделать на WMI...  Понимаю, что данный экземпляр класса Win32_Service либо не имеет какого-либо квалификатора, либо этот квалификатор имеет значение, не позволяющее мне менять тип запуска службы... Нигде не могу подробно про это почитать (желательно по-русски). Подскажите, кто знает ссылку, либо поправьте мой скрипт.

var wbemFlagReturnImmediately = 0x10; 
var wbemFlagForwardOnly = 0x20; 
 
var objWMIService = GetObject("winmgmts:\\\\.\\root\\CIMV2"); 
try
    {
       var colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Service WHERE Name = \"avast! Antivirus\"", "WQL", 
                                          wbemFlagReturnImmediately | wbemFlagForwardOnly); 
 
    var enumItems = new Enumerator(colItems); 
      for (; !enumItems.atEnd(); enumItems.moveNext()) 
        { 
              var objItem = enumItems.item();                // получение экземпляра класса, соотв. службе аваста
        WScript.Echo("Тип запуска службы: " + objItem.Name + " = " + objItem.StartMode); 
        if(objItem.StartMode == "Auto")
            {
            try
                {
                objItem.ChangeStartMode("Disabled");    // применял значения "Manual" и "Disabled"
                objItem.Put_();
                WScript.Echo("Служба остановлена");
                }
            catch(e)
                {
                WScript.Echo("Ошибка при изменении метода запуска службы");
                }
            }

           } 
    }
catch(e)
    {
    WScript.Echo("Ошибка доступа к коллекции SWbemObjectSet");
        }

2 (изменено: im2002, 2012-10-02 00:43:17)

Re: JS, WSH: изменение типа запуска службы

Дополнение к вышесказанному. Был не прав, квалификаторы, наверное ни при чём, я её и "руками" изменить не могу, пишет, собака, отказано в доступе...
Пробовал запускать скрипт от имени "system" (зареймив строки с сообщениями), через планировщик - тоже не меняет тип запуска!!! Если вместо этой службы попробовать к примеру службу "TeamViewer6" либо "tvnserver" - всё прекрасно работает! Строка: "objItem.Put_()" - не обязательна, работает и с ней и без неё!!!???
Но как изменить тип запуска через скрипт для службы: "avast! Antivirus" - так решения и не нашёл...
ОС = Win7 x64

3

Re: JS, WSH: изменение типа запуска службы

im2002, квалификаторы, действительно, не при чём. Вам не позволяет сделать это модуль самозащиты антивируса. И это правильно.

Кстати, а зачем Вам сие нужно?

4

Re: JS, WSH: изменение типа запуска службы

alexii пишет:

im2002, квалификаторы, действительно, не при чём. Вам не позволяет сделать это модуль самозащиты антивируса. И это правильно.

Кстати, а зачем Вам сие нужно?

Читал материалы по wmi с этого форума, пробовал/свойства методы классов Win32_Process, Win32_Service, у меня стоит Аваст, наткнулся на проблему, написал, примерно вот как-то так. А зачем нужно? так к знаниям тянусь! Если данную службу отключить через wmi, либо ещё как-либо, используя скриптовые технологии -  нельзя, напишите, закроем тему.

5

Re: JS, WSH: изменение типа запуска службы

im2002, при общей тяге к знаниям не забывайте про правильное направление (§2.9).

6

Re: JS, WSH: изменение типа запуска службы

alexii пишет:

im2002, при общей тяге к знаниям не забывайте про правильное направление (§2.9).

Я прочитал этот пункт форума по вашей ссылке. И какое это отношение имеет к взлому, вирусам и публикациям непристойного, клеветнического или противозаконного содержания??? По вашему, научившись останавливать подобные сервисы я каким-то образом "напишу вирус"? Или какие-то службы windows - табу для обсуждения? Паранойя просто какая-то, так вы же администратор, закрывайте скорей тему, а то вдруг кто  ещё заинтересуется!

7

Re: JS, WSH: изменение типа запуска службы

im2002 пишет:

Я прочитал этот пункт форума по вашей ссылке.

Если бы прочитали сразу, как и положено — при регистрации, вопросов, подобных изложенным в предыдущем посту, не возникло бы.