В данном разделе находится общая информация.
В данном разделе находятся примеры различных Linux shell скриптов.
В данном разделе находятся примеры различных скриптов на WSH.
В данном разделе находятся материалы по разным темам.

Правильный CSS!

Для корректного отображения страницы, рекомендуется использовать браузер поддерживающий JavaScript.

Для навигации пользуйтесь боковым меню и кнопками "Описание" и "Подробно".

Простой WSH (VBS) скрипт.

Основные возможности:

  • Определение логина пользователя, работающего на целевом ПК в домене Windows по IP адресу или имени ПК;
  • Определение SIDа этого пользователя;
  • Запуск из командной строки (пример):
    				cscript.exe //Nologo useroncomp.vbs 10.1.0.1
    			
    Вывод:
    DUN=MYDOMAIN\ivanovii
    CN=MYCOMP
    UN=ivanovii
    SID=S-1-5-21-123455789-0123456789-0123456789-0123
    			

Пример создания скрипта на WSH (VBS) для определения имени пользователя залогиненного на целевой компьютер в домене Windows.

Скриншот:


Пример vbs файла:

(Скачать файл можно будет здесь. ЗЫ Не тыкать! Жать правой кнопкой: сохранить ссылку как...)

Текст на WSH (VBS):

Set objArgs = WScript.Arguments
On Error Resume Next
strComputer = objArgs(0)

'Аргументы - если не заданы в строке запуска, будет выдан GUI запрос.
If Err.Number <> 0 Then
    strComputer = InputBox("Введите IP адрес или имя!", "Адресс", "10.1.0.x")
    Err.Clear
End If
If strComputer = "" Then
    Wscript.Echo "Действие отменено."
    WScript.Quit(0)
End If

'DOMAIN - имя домена, в котором работает пользователь. Указано явно.
DOMAIN = "MYDOMAIN"

Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" _ 
    & strComputer & "\root\cimv2")
    
If Err.Number = 0 Then
    Set colComputer = objWMIService.ExecQuery _
        ("Select * from Win32_ComputerSystem")
    For Each objComputer in colComputer
        'Определение имени пользователя
        Wscript.Echo "DUN=" & objComputer.UserName & vbNewline & "CN=" & objComputer.Name
        If RegExpTest("\w+\\", objComputer.UserName) Then
            UN = ReplaceTest("\w+\\", "", objComputer.UserName)
        Else
            UN = objComputer.UserName
        End If
        'Определение SIDа
        strComputer = "."
        Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
        Set objAccount = objWMIService.Get("Win32_UserAccount.Name='" & UN & "',Domain='" & DOMAIN & "'")
        USID = objAccount.SID
        Wscript.Echo "UN=" & UN & vbNewline & "SID=" & USID
    Next
End If

If Err.Number <> 0 Then
    Wscript.Echo "Error: " & Err.Number & " " & Err.Description
    WScript.Quit(1)
Else 
    WScript.Quit(0)
End If

Function ReplaceTest(patrn, replStr, str1)
  Dim regEx               ' Create variables.
  Set regEx = New RegExp            ' Create regular expression.
  regEx.Pattern = patrn            ' Set pattern.
  regEx.IgnoreCase = True            ' Make case insensitive.
  ReplaceTest = regEx.Replace(str1, replStr)   ' Make replacement.
End Function

Function RegExpTest(patrn, strng)
  Dim regEx, retVal            ' Create variable.
  Set regEx = New RegExp         ' Create regular expression.
  regEx.Pattern = patrn         ' Set pattern.
  regEx.IgnoreCase = False      ' Set case sensitivity.
  retVal = regEx.Test(strng)      ' Execute the search test.
  If retVal Then
    RegExpTest = 1
  Else
    RegExpTest = 0
  End If
End Function
            

Yandex.Metrika

Page modification: Птн Сен 10 16:48:35 MSD 2010
Используется Quanta+ 3.5.10 Under the GPL v2 license.