none
Инвентаризация с помощью скрипта RRS feed

  • Вопрос

  • Товарищи доброго времени суток. нужен скрипт для групповой политики vbs или bat который будет отрабатывать на XP Нужно записат информатчию про RAM и жосткий диск в тхт файл на компьютере и назвать этот файл именем самого компютера потом поместить этот файл в сетевую папку. И если можно в файл записать SamAccountName самого залогинившегося пользователя примерно так:

    Username: Taryel.Kazimov

    Ram: 2 GB

    HDD: 80 GB

    15 октября 2014 г. 13:02

Ответы

  • Option Explicit
    
    Dim objWMIService, wshShell, colItems 
    Dim strUserName, strComputer, strComputerName, strNetworkFolder, objItem
    Dim objFSO, objFile
    Dim MB, GB
    
    MB = 1024 *1024
    GB = 1024 *1024 * 1024
    strNetworkFolder = "\\server\share\"
    
    Set wshShell = WScript.CreateObject( "WScript.Shell" )
    strUserName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )
    strComputerName  = wshShell.ExpandEnvironmentStrings("%ComputerName%")
    
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objFile = objFSO.CreateTextFile(strNetworkFolder & strComputerName & ".txt", True)
    
    objFile.WriteLine "UserName: " & strUserName
    
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    
    Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
    For Each objItem in colItems
         objFile.WriteLine "RAM: " & Round(objItem.TotalPhysicalMemory / MB,3) & " MB"
    Next
    
    Set colItems = objWMIService.ExecQuery("Select * from Win32_DiskDrive")
    
    For Each objItem in colItems
         objFile.WriteLine "HDD: " & Round(objItem.Size / GB,3)  & " GB"
    Next
    
    objFile.Close()


    • Изменено KazunEditor 15 октября 2014 г. 15:45
    • Помечено в качестве ответа Taryel 16 октября 2014 г. 10:45
    15 октября 2014 г. 15:44
    Отвечающий

Все ответы

  • Option Explicit
    
    Dim objWMIService, wshShell, colItems 
    Dim strUserName, strComputer, strComputerName, strNetworkFolder, objItem
    Dim objFSO, objFile
    Dim MB, GB
    
    MB = 1024 *1024
    GB = 1024 *1024 * 1024
    strNetworkFolder = "\\server\share\"
    
    Set wshShell = WScript.CreateObject( "WScript.Shell" )
    strUserName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )
    strComputerName  = wshShell.ExpandEnvironmentStrings("%ComputerName%")
    
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objFile = objFSO.CreateTextFile(strNetworkFolder & strComputerName & ".txt", True)
    
    objFile.WriteLine "UserName: " & strUserName
    
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    
    Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
    For Each objItem in colItems
         objFile.WriteLine "RAM: " & Round(objItem.TotalPhysicalMemory / MB,3) & " MB"
    Next
    
    Set colItems = objWMIService.ExecQuery("Select * from Win32_DiskDrive")
    
    For Each objItem in colItems
         objFile.WriteLine "HDD: " & Round(objItem.Size / GB,3)  & " GB"
    Next
    
    objFile.Close()


    • Изменено KazunEditor 15 октября 2014 г. 15:45
    • Помечено в качестве ответа Taryel 16 октября 2014 г. 10:45
    15 октября 2014 г. 15:44
    Отвечающий
  • Спасибо работает как часы
    16 октября 2014 г. 10:46