Есть такой скрипт (login.vbs):
Код:
On Error Resume Next
Set objIE = WScript.CreateObject("InternetExplorer.Application", "IE_")
objIE.Navigate "about:blank"
While objIE.Busy
Wscript.Sleep 1000
Wend
objIE.FullScreen = True
objIE.MenuBar = False
objIE.StatusBar = False
objIE.ToolBar = False
objIE.Resizable = False
objIE.Height = 150
objIE.Width = 300
objIE.Top = 50
objIE.Left = 50
objIE.Document.Write "<html><head><title>Login</title></head>"
objIE.Document.Write "<body style=""overflow:hidden;"" background=""C:\WINDOWS\system32\ntimage.gif""><div align=center>"
objIE.Document.Write "<b>User name:</b><br><input style=""width:200px;background:silver;color:black;border:0px;"" type=text size=20 name=uname><br>"
objIE.Document.Write "<b>Password:</b><br><input style=""width:200px;background:silver;color:black;border:0px;"" type=password size=20 name=upass onEnter='javascript:eOK.value=""1"";'>"
objIE.document.write "<hr style=""border: 0px; height: 1px;""><input type=hidden name=eOK value=0>"
objIE.Document.Write "<input style=""width:100px;background:blue;color:white;border:0px;"" type=button name=bOK value=OK onClick='javascript:eOK.value=""1"";'>"
objIE.document.write "<input type=hidden name=eCancel value=0>"
objIE.Document.Write " <input style=""width:100px;background:blue;color:white;border:0px;"" type=button value=Cancel onClick='javascript:eCancel.value=""1"";'>"
objIE.Document.Write "</form></div></body></html>"
objIE.Visible = True
While objIE.Busy
Wscript.Sleep 1000
Wend
While 0=0
WScript.Sleep 1000
if objIE.document.all.eCancel.value = "1" then
objIE.Quit
WScript.Quit
end if
if objIE.document.all.eOK.value = "1" then
UMountAll()
MountAll()
if Err.Number = 0 then
objIE.Quit
WScript.Quit
else
objIE.document.all.eOK.value = "0"
objIE.document.all.upass.value = ""
MsgBox "Ошибка подключения 0x" & CStr(Hex(Err.Number)) & vbNewLine & "Обратитесь в отдел техподдержки.", 48, "WSH Logon Script Error"
Err.Clear
end if
end if
Wend
Sub IE_OnQuit()
WScript.Quit
End Sub
Sub UMountAll()
Set objNetwork = CreateObject("Wscript.Network")
Set colDrives = objNetwork.EnumNetworkDrives
For i = 0 to colDrives.Count-1 Step 2
objNetwork.RemoveNetworkDrive colDrives.Item(i), true, true
Next
End Sub
Sub MountAll()
set net = Wscript.CreateObject("Wscript.Network")
if (net.MapNetworkDrive("L:", "\\itc1\l", ,objIE.document.all.uname.value, objIE.document.all.upass.value) <> 0) Then
MsgBox "Ошибка" & vbNewLine & "Обратитесь в отдел техподдержки", 48, "WSH Logon Script Error"
end if
if (net.MapNetworkDrive("H:", "\\itc1\homes", ,objIE.document.all.uname.value, objIE.document.all.upass.value) <> 0) Then
MsgBox "Ошибка" & vbNewLine & "Обратитесь в отдел техподдержки", 48, "WSH Logon Script Error"
end if
if (net.MapNetworkDrive("O:", "\\itc1\common", ,objIE.document.all.uname.value, objIE.document.all.upass.value) <> 0) Then
MsgBox "Ошибка" & vbNewLine & "Обратитесь в отдел техподдержки", 48, "WSH Logon Script Error"
end if
if (net.MapNetworkDrive("T:", "\\itc1\t", ,objIE.document.all.uname.value, objIE.document.all.upass.value) <> 0) Then
MsgBox "Ошибка" & vbNewLine & "Обратитесь в отдел техподдержки", 48, "WSH Logon Script Error"
end if
Set wshSheLL = WScript.CreateObject("WScript.Shell")
if (wshSheLL.Run("net time \\itc1 /set /yes", 0, TRUE) <> 0) Then
MsgBox "Ошибка синхронизации времени!", 48, "WSH Logon Script Error"
end if
End Sub
Сидит в папке "Автозагрузка", идентифицирует пользователя в сети института после ввода логина-пароля. В папке system32 обнаружен файл ntimage.gif, упоминание о котором есть в этом скрипте. Стоит задача переустановить систему (и было и будет Windows XP Pro) на машинах этой сети, и вернуть скрипт, естественно. Попробовал запустить скрипт просто на рабочем столе посторонней машины - он открылся во весь экран, а не в маленьком окне вверху слева, как на машинах сети. Подскажите, может, что-то упустил, и есть какие то еще файлы, необходимые для нормальной его работы. Что определяет размер его окна? И еще - что в нем исправить, чтоб после логина-пароля можно было не нажимать кнопку "ОК", а отрабатывалось нажатие клавиши "Enter"?
PS Заметил, что в исходном скрипте есть пробелы после некоторых строк, но так - в исходном файле. Это на его работу не влияет?