1

Тема: VBScript: пример передачи данных в Microsoft Office Word

Скрипт собирает некоторые сведения об операционной системе локального компьютера, запускает Microsoft Office Word и отрисовывает эти сведения там.

Dim oWord 
Set oWord = CreateObject("Word.Application") 
oWord.Visible = true 
oWord.Documents.Add 
oWord.Selection.Font.Name = "Arial"
oWord.Selection.Font.Size = 10
oWord.Selection.ParagraphFormat.Alignment = 1
oWord.Selection.Font.Bold = 9999998
oWord.Selection.TypeText "СВЕДЕНИЯ ОБ ОПЕРАЦИОННОЙ СИСТЕМЕ"
oWord.Selection.TypeParagraph
oWord.Selection.TypeParagraph
oWord.Selection.ParagraphFormat.Alignment = 3
oWord.Selection.Font.Bold = 9999998
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_OperatingSystem",,48)
For Each objItem in colItems  
    oWord.Selection.TypeText  "Имя тома, с которого загружается операционная система: " & objItem.BootDevice    
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Номер сборки операционной системы: " & objItem.BuildNumber
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Tип сборки операционной системы: " & objItem.BuildType
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Короткое (одна строка) текстовое описание объекта: " & objItem.Caption
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Кодовая страница, используемая операционной системой: " & objItem.CodeSet
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Код страны/региона, используемый операционной системой: " & objItem.CountryCode
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Имя класса или подкласса, используемого для создания экземпляра: " & objItem.CreationClassName
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Имя класса создания системы компьютера: " & objItem.CSCreationClassName
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText  "Последний пакет обновления, установленный в системе: " & objItem.CSDVersion
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Имя системы компьютера: " & objItem.CSName
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Разница (в минутах) между локальным временем компьютера и временем по Гринвичу: " & objItem.CurrentTimeZone
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Описание операционной системы Windows: " & objItem.Description
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Дата установки: " & objItem.InstallDate
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Время последней загрузки операционной системы: " & objItem.LastBootUpTime
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Изготовитель операционной системы: " & objItem.Manufacturer
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Является ли эта операционная система основной: " & objItem.Primary
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Предоставляет дополнительные сведения о компьютере: " & objItem.ProductType 
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Имя пользователя, на которого зарегистрирована операционная система: " & objItem.RegisteredUser
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Cерийный номер продукта для операционной системы: " & objItem.SerialNumber
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Основной номер версии пакета обновления, установленного в системе: " & objItem.ServicePackMajorVersion
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Дополнительный номер версии пакета обновления: " & objItem.ServicePackMinorVersion
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Физический раздел диска, в который установлена операционная система: " & objItem.SystemDevice
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Системная папка операционной системы: " & objItem.SystemDirectory
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Буква диска, на котором расположена операционная система: " & objItem.SystemDrive
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Номер версии операционной системы: " & objItem.Version
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeText "Папка Windows операционной системы: " & objItem.WindowsDirectory
    oWord.Selection.TypeParagraph
    oWord.Selection.TypeParagraph
    
Next 
Set WshShell = CreateObject("WScript.Shell")
MicroSoft = "HKLM\SOFTWARE\Microsoft"
DigitalProductIdWindows = MicroSoft & "\Windows NT\CurrentVersion\DigitalProductId"
WindowsKey = GetKey(WshShell.RegRead(DigitalProductIdWindows))
    Function GetKey(byval p)
    pc="BCDFGHJKMPQRTVWXY2346789"
    For i=0 To 28
        a=0
        For j=0 To 14 
            a=p(66-j)+a*256 
            p(66-j)=(a\24) And 255 
            a=a Mod 24
        Next
        ProductKey = Mid(pc,a+1,1) & ProductKey
        If (((i+2) Mod 6)=0) And (i<28) Then
            i=i+1
            ProductKey = "-" & ProductKey
        End If
    Next
    GetKey = ProductKey
End Function
    oWord.Selection.Font.Bold = 9999998
    oWord.Selection.TypeText "Ключ для регистрации операционной системы: " & WindowsKey

Автор скрипта - Alexbootch.

Предложения в русском языке начинаются с большой буквы и заканчиваются точкой.
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.