Программирование

Помгите разобраться, что за скрипт?

Mr.Roniko 26-02-2013 18:29

Всем привет, подскажите, что за скрипт такой:

Set WshS = WScript.CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")
On Error Resume Next

usrProfile = WshS.ExpandEnvironmentStrings("%UserProfile%\Главное меню\Программы\Автозагрузка\")

If oFSO.FileExists(usrProfile & WScript.ScriptName) Then
If (Wscript.ScriptFullName <> usrProfile & WScript.ScriptName) Then
oFSO.copyFile Wscript.ScriptFullName, usrProfile & WScript.ScriptName, True
WScript.Quit
End If
Else
oFSO.copyFile Wscript.ScriptFullName, usrProfile & WScript.ScriptName, True
End If

arrComputers = Array("dc01","dc02","dc03")

Dim objWMIService
Dim WshNetwork
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set objFSO = CreateObject("Scripting.FileSystemObject")

usrProfile = WshS.ExpandEnvironmentStrings("%AllUsersProfile%\")

Function IsAlive (host)
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}\\.\root\cimv2")
Set colResult = objWMIService.ExecQuery ("Select * from Win32_PingStatus " & "Where Address = '" & host & "'")

For Each Response In colResult
If Response.StatusCode = 0 Then
IsAlive = True
Else
IsAlive = False
End If
Next
End Function

Function ResolveIP(strComputer)
Dim wmiQuery, objWMIService, objPing, objStatus

wmiQuery = "Select * From Win32_PingStatus Where " & _
"Address = '" & strComputer & "'"

Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set objPing = objWMIService.ExecQuery(wmiQuery)

For Each objStatus in objPing
If IsNull(objStatus.StatusCode) Or objStatus.Statuscode<>0 Then
ResolveIP = "Computer is Unreachable!"
Else
ResolveIP = objStatus.ProtocolAddress
End If
Next
End Function

'--------------------------------------------------

do While (true)

dcAlive = false
For Each strComputer In arrComputers
If IsAlive (strComputer) Then
dcAlive = true
End If
Next

brAlive = false
If objFSO.FolderExists("P:") Then
brAlive = true
End If

LocalMap = false
If objFSO.FileExists(usrProfile & "local.map") Then
LocalMap = true
End If

If not dcAlive and not brAlive Then
On error resume next
WshNetwork.RemoveNetworkDrive "P:",true
WshNetwork.MapNetworkDrive "P:","путь к папке в сети", false, "путь к папке в сети\diskmap","localdiskmaper"

Set oFlag = objFSO.CreateTextFile(usrProfile & "local.map")
End If

If dcAlive and not brAlive Then
On error resume next
WshNetwork.RemoveNetworkDrive "P:",true
WshNetwork.MapNetworkDrive "P:","\\путь к папке в сети\data", true

Set aFlag = objFSO.GetFile(usrProfile & "local.map")
aFlag.Delete
End if

If dcAlive and LocalMap Then
On error resume next
WshNetwork.RemoveNetworkDrive "P:",true
WshNetwork.MapNetworkDrive "P:","\\путь к папке в сети\data", true

Set aFlag = objFSO.GetFile(usrProfile & "local.map")
aFlag.Delete
End if

wscript.sleep 600000

Loop


Заранее спасибо. Очень нужно узнать в общих чертах, что он делает и вреден ли для ПК.

Glas 26-02-2013 18:59

что-то в автозагрузку пихает и по сети шарится.
Mr.Roniko 26-02-2013 21:27

wscript.sleep 600000
Loop

Вот по этим строчкам примерно понятно, что скрипт выполняется каждые 600000 секунд (примерно через 7 дней), и он постоянно повторяется...

А вот чем это грозит? )

Glas 26-02-2013 21:55

quote:
Originally posted by Mr.Roniko:

600000 секунд



миллисекунд => 10 минут
Mr.Roniko 26-02-2013 22:00

quote:
Originally posted by Glas:

миллисекунд => 10 минут

Вот об этом не знал )


Может поможешь, примерно расскажешь, что происходит с компами при выполнении скрипта, что-то куда-то прописывается, что-то отрубается может быть ...

Glas 26-02-2013 22:09

Это сложнее. Если правильно понимаю, то скрипт на Visual Basic, а я с ним не знаком.
DnikitaA 27-02-2013 19:48

Производится мониторинг сети среди компьютеров "dc01","dc02","dc03" и подключает или отключает сетевые диски на расшареннные папки в этих компьютерах
Mr.Roniko 27-02-2013 20:34

quote:
Originally posted by DnikitaA:
Производится мониторинг сети среди компьютеров "dc01","dc02","dc03" и подключает или отключает сетевые диски на расшареннные папки в этих компьютерах

Спасибо