Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   идентификация пользователя в сети института после ввода логина-пароля (http://forum.oszone.net/showthread.php?t=196973)

Deep2007 18-01-2011 18:29 1591623

идентификация пользователя в сети института после ввода логина-пароля
 
Есть такой скрипт (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 "&nbsp;<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 Заметил, что в исходном скрипте есть пробелы после некоторых строк, но так - в исходном файле. Это на его работу не влияет?


Время: 21:59.

Время: 21:59.
© OSzone.net 2001-