Войти

Показать полную графическую версию : Удаление ключа KIS7


Fresh96
30-10-2009, 16:36
Здравствуйте. Помогите написать скрипт, который удалял бы ключ, установленный в Kaspersky Internet Security 7.

У самой программы функции удаления ключа из командной строки - нет. (Для добавления есть - ADDKEY 1021011.key /password=password)

Написал следующее, но почему то не отрабатывает. Не фокусируется на окне, да и вообще, похоже не видит его :(
If WinExists(@ScriptName) Then Exit
AutoItWinSetTitle(@ScriptName)

;блокируем мышь и клаву
If @OSType="WIN32_NT" Then BlockInput ( 1 )

;изменяем режим привязки (к клиентской части окна - 2) координат мыши - теперь 0,0 будет в левом верхнем углу активного окна
;(это делается для независимости координат от разрешения экрана, т.к. по ум. привязка идет к лев. верх. углу экрана)
AutoItSetOption ("MouseCoordMode","2")

;--- Start ---
Run("C:\Program Files\Kaspersky Lab\Kaspersky Internet Security 7.0\avp.exe")
Sleep(2000)
WinWait("Kaspersky Internet Security 7.0","")

Sleep(2000)
MouseClick("left",65,95,1,0)
Sleep(2000)
MouseClick("left",65,395,1,0)
Sleep(2000)
MouseClick("left",340,460,1,0)
Sleep(2000)

;вводим пароль
Send ("password")
Send ("{ENTER}")
Send ("{ENTER}")
WinClose("Kaspersky Internet Security","")

;снимаем блокировку мыши и клавы
BlockInput ( 0 )

Вроде бы моя тема не нарушает правил. Просто хочется использовать функцию, которая заложена в программе.

timsky
04-11-2009, 01:38
Делай ресет активации. Вот быстро подправил свой ресет для кис 2009:
If WinExists(@ScriptName) Then Exit
AutoItWinSetTitle(@ScriptName)

$reg = RegDelete('HKLM\SOFTWARE\KasperskyLab\LicStorage')
If $reg = 2 Then
MsgBox(16, 'Ошибка ' & @error & ' при удалении раздела реестра (KIS 2009)', 'Пожалуйста, убедитесь, что отключили самозащиту KIS' & @CRLF & 'Раздел: HKLM\SOFTWARE\KasperskyLab\LicStorage')
;Exit
EndIf

$reg = RegDelete('HKLM\SOFTWARE\Microsoft\SystemCertificates\SPC')
If $reg = 2 Then
MsgBox(16, 'Ошибка ' & @error & ' при удалении раздела реестра (KIS 2009)', 'Пожалуйста, убедитесь, что отключили самозащиту KIS' & @CRLF & 'Раздел: HKLM\SOFTWARE\Microsoft\SystemCertificates\SPC')
;Exit
EndIf

$reg = RegDelete('HKLM\SOFTWARE\Classes\LK.Auto')
If $reg = 2 Then
MsgBox(16, 'Ошибка ' & @error & ' при удалении раздела реестра (KIS 7)', 'Пожалуйста, убедитесь, что отключили самозащиту KIS' & @CRLF & 'Раздел: HKLM\SOFTWARE\Classes\LK.Auto')
;Exit
EndIf

Select
Case @OSVersion = 'WIN_2000' Or @OSVersion = 'WIN_XP' Or @OSVersion = 'WIN_2003'
$dir = @AppDataCommonDir & '\Kaspersky Lab\AVP8\Data'

Case @OSVersion = 'WIN_VISTA' Or @OSVersion = 'WIN_2008'
$dir = @ProgramFilesDir & '\Kaspersky Lab\AVP8\Data'
EndSelect

$drive = StringSplit($dir, '\', 1)
$fs = DriveGetFileSystem($drive[1])

If Not FileDelete(@AppDataCommonDir & '\Kaspersky Lab\AVP7\Data\perfm.dat') Then
MsgBox(16, 'Ошибка ' & @error & ' при удалении файла', 'Пожалуйста, убедитесь, что отключили самозащиту KIS 7' & @CRLF & 'Файл: ' & @AppDataCommonDir & '\Kaspersky Lab\AVP7\Data\perfm.dat')
;Exit
EndIf

If $fs = 'NTFS' Then NTFS($dir)

MsgBox(64, 'Готово!', 'В случае необходимости повторить.')

Func NTFS($dir)
$file = FileOpen($dir & ':extended', 2)
$write = FileWrite($file, '')
If $write = 0 Then
MsgBox(16, 'Ошибка при удалении NTFS потока. OS: ' & @OSVersion, 'Пожалуйста, убедитесь, что отключили самозащиту KIS 2009')
;Exit
EndIf
FileClose($file)
EndFunc ;==>NTFS

Для 7-ки нужно потереть файл c:\Documents and Settings\All Users\Application Data\Kaspersky Lab\AVP7\Data\perfm.dat и вот эти ветки в реестре:
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\LK.Auto]
[HKEY_LOCAL_MACHINE\SOFTWARE\KasperskyLab\LicStorage]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\SPC\Certificates]

Fresh96
04-11-2009, 10:33
подправил свой ресет »
В Вашем скрипте происходит стирание данных в реестре, а мне нужно простое нажатие кнопок в открытом окне программы.
Для моего случая не придется отключать самозащиту KIS.
Но все равно - спасибо.

timsky
04-11-2009, 23:18
Fresh96, Дык, как раз и трутся те самые ключи, которые содержат инфу о регистрации. А тыкать по кнопкам программы не получится, т.к.: Написал следующее, но почему то не отрабатывает. Не фокусируется на окне, да и вообще, похоже не видит его »
Это самозащита.

Slawok
08-11-2009, 14:12
Самозащиту можно отключать автоматически, это требует небольших настроек, но однократно, зато потом можно радоваться тому, как касперский продляется автоматически.
Делается следующим образом, касперский поддерживает управление из командной строки, но нет прямой команды отключения самозащиты, зато есть импорт и экспорт готовых настроек.
Отключаем самозащиту вручную, сохраняем настройки в файл, потом включаем самозащиту и снова сохраняем настройки в другой файл. И на касперского пароль еще надо поставить, а то работать не будет.
Ну и соответственно в начале скрипта делаем импорт настроек с выключенной самозащитой, а в конце со включенной.




© OSzone.net 2001-2012