Выгрузка списка общих ресурсов сервера в файл

Dim objArgs
Dim strFileName
Dim oFSO, oFile

'Скрипт работает, если указано имя файла для выгрузки списка сетевых папок.
'если файл не указан, скрипт не выполняется.
Set objArgs = WScript.Arguments
If objArgs.Named.Item("f")="" Then
    WScript.Echo "Использование: EnumerateSharedFolders.vbs /f:<filename>"
    WScript.Quit (1)
Else
    strFileName = objArgs.Named.Item("f")
End If

Wscript.Echo "Начинаем работу."   

'Инициализация текстового файла для выгрузки
'Если файл существует, он стирается и заменяется новым
Set oFSO = CreateObject("Scripting.FileSystemObject")    
If oFSO.FileExists(strFileName) Then
    oFSO.Deletefile(strFileName)
End If
Set oFile = oFSO.CreateTextFile(strFileName)        



'Имя компьютера, с которого надо получить список папок
' "." означает компьютер, на котором выполняется скрипт
strComputer = "server_south"

'Запрос к WMI
'Выбор всех shared folder с Type=0, это обычная файловая общая папка
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colShares = objWMIService.ExecQuery("Select * from Win32_Share WHERE Type=0")


For each objShare in colShares
    'oFile.Write objShare.Caption + ","
    oFile.Write objShare.Description + ","
    If Not objShare.AllowMaximum Then
        oFile.Write Cstr(objShare.MaximumAllowed) + ","
    Else
        oFile.Write "0,"
    End If
    'oFile.Write objShare.AllowMaximum + ","
    'oFile.Write objShare.MaximumAllowed + ","
    oFile.Write objShare.Name + ","
    oFile.Writeline objShare.Path
Next

Wscript.Echo "Готово!"   

Также интересно:

Интересное на сайте: 
0
Голосов пока нет

Оставить комментарий