Любой язык - [решено] Удаления Java любой версии

Аватара пользователя
dahiko

Любой язык - [решено] Удаления Java любой версии

Сообщение dahiko »

Всем привет!



Задача такая, удалить Java со всех ПК. Известны версии:

Java 7 update 25, update 21, update 13

Java 6 update 21, update 22



Решил сначала проверить удаление одной из этих версий на одном ПК и нашел такой скрипт:



'Start Script



On Error Resume Next

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _

& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")



'Uninstall Java(TM) 7 Update 25

Set colJava6dot3 = objWMIService.ExecQuery _

("Select * from Win32_Product Where Name = 'Java(TM) 7 Update 25'")

For Each objSoftware in colJava6dot3

objSoftware.Uninstall()

Next



'End Script





Как я понял, тут можно самому задавать нужну версию для удаления. Но скрипт не работает - после его запуска ничего не происходит. В установленных программах на этом ПК есть Java 7 update 25. Попробовал в скрипте изменить одну строчку:

вместо ("Select * from Win32_Product Where Name = 'Java(TM) 7 Update 25'")

написал ("Select * from Win32_Product Where Name = 'Java 7 Update 25'")



Не помогло - так же ничего не происходит. Подскажите, как подправить скрипт или может укого есть другое предложение.

Спасибо!
Аватара пользователя
dahiko

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение dahiko »

Код:

Код: Выделить всё

#Powershell script.
#Don't forget unlock script executing by 
#using command "Set-ExecutionPolicy RemoteSigned" or "Set-ExecutionPolicy Unrestricted"
#Save this file with ".ps1" extension
$app=Get-WmiObject -Class win32_product | Where-Object {$_.Name -like "Java*7 Update 25"}
$app.Uninstall()
Аватара пользователя
sunnykey

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение sunnykey »

Цитата dahiko:



вместо ("Select * from Win32_Product Where Name = 'Java(TM) 7 Update 25'")

написал ("Select * from Win32_Product Where Name = 'Java 7 Update 25'")
Любой язык - [решено] Удаления Java любой версии




LIKE Operator (Windows)
:



Код:

Код: Выделить всё

… Where Name LIKE 'Java% Update %'"
Аватара пользователя
Iska

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение Iska »

1.

На
http://java.com/ru/download/faq/remo...erversions.xml
не были?



Ответ: MWZ, здесь описан ручной режим удаления. Это не совсем то, что нужно.



2.

#Powershell script.

#Don't forget unlock script executing by

#using command "Set-ExecutionPolicy RemoteSigned" or "Set-ExecutionPolicy Unrestricted"

#Save this file with ".ps1" extension

$app=Get-WmiObject -Class win32_product | Where-Object {$_.Name -like "Java*7 Update 25"}

$app.Uninstall()



Ответ: SUNNYKEY, данный скрип работает. Спасибо.



3.

… Where Name LIKE 'Java% Update %'"

Ответ: ISKA, ваше предложение тоже работает.Спасибо.



А так же хочу отметить свою ошибку - я запустил свой скрипт и сразу проверил установленные программы и Java не удалилась. Но спустя 30 минут Java из списка программ пропала. Вопрос решен.
Аватара пользователя
dahiko

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение dahiko »

1.

На
http://java.com/ru/download/faq/remo...erversions.xml
не были?



Ответ: MWZ, здесь описан ручной режим удаления. Это не совсем то, что нужно.



2.

#Powershell script.

#Don't forget unlock script executing by

#using command "Set-ExecutionPolicy RemoteSigned" or "Set-ExecutionPolicy Unrestricted"

#Save this file with ".ps1" extension

$app=Get-WmiObject -Class win32_product | Where-Object {$_.Name -like "Java*7 Update 25"}

$app.Uninstall()



Ответ: SUNNYKEY, данный скрип работает. Спасибо.



3.

… Where Name LIKE 'Java% Update %'"

Ответ: ISKA, ваше предложение тоже работает.Спасибо.



А так же хочу отметить свою ошибку - я запустил свой скрипт и сразу проверил установленные программы и Java не удалилась. Но спустя 30 минут Java из списка программ пропала. Вопрос решен.
Аватара пользователя
dahiko

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение dahiko »

Хочу продолжить тему. При запуске этого скрипта от имени администратора через CMD у пользователя на ПК Java удаляется. Но при запуске через GPO Java не удаляется. Если применить политику на уровне пользователя, то конечно же прав не хватает. А если применить на уровне ПК, то не отрабатывает по непонятной причине.

Вопросы:

1. можно ли как-то запустить эторт скрипт через GPO (политика применена на уровне пользоваетля), чтобы прав на удаление Java хватило???

2. Почему не отрабатывает удаление через GPO если политика применена на уровне ПК??? Пробовал на 3 ПК с ОС Windows 7 Корпоративная.



Скрипт лежит в GPO в "Сценарии\Автозагрузка"

Окночательный скрипт такой:



'Start Script



On Error Resume Next

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _

& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")



'Uninstall Java 7 Update 25

Set colJava6dot3 = objWMIService.ExecQuery _

("Select * from Win32_Product Where Name = 'Java 7 Update 25'")

For Each objSoftware in colJava6dot3

objSoftware.Uninstall()

Next



'End Script



Очень нужна помощь. Заранее благодарен!
Аватара пользователя
Iska

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение Iska »

Цитата Iska:



dahiko, уберите «On Error Resume Next» и узнаете «непонятную причину».
Любой язык - [решено] Удаления Java любой версии




Убрал эту строку и ничего не происходит - как и раньше




Цитата Iska:



P.S. Вы можете хоть со своей машины исполнять его, указывая целевую машину в «strComputer = "…"».
Любой язык - [решено] Удаления Java любой версии




На одном ПК получилось удаленно снеси Java. На других не получается. В strComputer пробовал указать имя ПК или IP-адрес. Скрипт запускаю от имени пользователя, который имеет права админа на удаленном ПК. Что не так делаю? Изображение
Аватара пользователя
Iska

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение Iska »

Цитата dahiko:





Код:

Код: Выделить всё

"Select * from Win32_Product Where Name = 'Java(TM) 7 Update 25'"

Любой язык - [решено] Удаления Java любой версии





Цитата dahiko:



Окночательный скрипт такой:



Код:

Код: Выделить всё

"Select * from Win32_Product Where Name = 'Java 7 Update 25'"

Любой язык - [решено] Удаления Java любой версии




Так чему верить (проверить не могу — у меня нет Java)?
Аватара пользователя
Iska

Re: Любой язык - [решено] Удаления Java любой версии

Сообщение Iska »

Цитата Iska:

Так чему верить (проверить не могу — у меня нет Java)?
Любой язык - [решено] Удаления Java любой версии


Может лучше?



Код:

Код: Выделить всё

"Select * from Win32_Product Where Name LIKE 'Java*7 Update 25'"
Ответить

Вернуться в «Скриптовые языки администрирования Windows»