#$erroractionpreference = „SilentlyContinue“
# einen neuen Excel-Gegenstand für die Speicherung von Daten verursachen
$a = Neu-Gegenstand - comobject Excel.Application
$b = $a.Workbooks.Add ()
$c = $b.Worksheets.Item (1)
# die Titelreihe verursachen
$c.Cells.Item (1.1) = „Maschinen-Name“
$c.Cells.Item (1.2) = „Position“
$c.Cells.Item (1.3) = „IP address“
$c.Cells.Item (1.4) = „Dell halten Umbau“ instand
$c.Cells.Item (1.5) = „Computer-Modell“
$c.Cells.Item (1.6) = „OS/SP“
$c.Cells.Item (1.7) = „CPU-Art“
$c.Cells.Item (1.8) = „CPU-Geschwindigkeit“
$c.Cells.Item (1.9) = „RAM“
$c.Cells.Item (1.10) = „HD geben“ frei
$d = $c.UsedRange
$d.Interior.ColorIndex = 23
$d.Font.ColorIndex = 2
$d.Font.Bold = $True
$intRow = 2
# Liste von Computerbezeichnungen oder von IP address in Reihe lesen
$colComputers = Erhalteninhalt „list.txt“
# Prozess aller von below einmal für jedes hostname oder IP address
foreach ($strComputer in $colComputers)
{
Schreibenwirt ""
Schreibenwirt „, der ping“ $strComputer versucht
# ping jetzt das System
$ping = erhalten-wmiobject - Frage „vorwählen * von win32_pingstatus wohin Address='$ strcomputer'"
# Anzeigen-Resultate
wenn ($ping.statuscode - eq 0) {
„Antwortzeit: {0} Frau“ - f $ping.responsetime
}
sonst {
„keine Antwort“
}
$obj32NIC = Erhalten-WmiObject - Kategorie Win32_NetworkAdapterConfiguration - namespace „Wurzel \ CIMV2“ - Computerbezeichnung $strComputer - filtern „IPEnabled = „ausrichten““
$col32OS =Get-WmiObject - Kategorie Win32_OperatingSystem - Computerbezeichnung $Strcomputer
$col32System = erhalten-wmiobject - „Win32_ComputerSystem“ klassifizieren - namespace-„Wurzel \ CIMV2“ - Computerbezeichnung $strcomputer
$col32Bios = Erhalten-WmiObject - Kategorie Win32_BIOS - namespace-„Wurzel \ CIMV2“ - Computerbezeichnung $strComputer
$col32Proc = erhalten-wmiobject - „Win32_Processor“ klassifizieren - namespace-„Wurzel \ CIMV2“ - Computerbezeichnung $strComputer
Schreibenwirt „, der Info für“ $strComputer erfasst
foreach ($objNACItem in $obj32NIC)
{
$c.Cells.Item ($intRow, 1) = $objNACItem.DNSHostname
$c.Cells.Item ($intRow, 3) = $objNACItem.IPAddress
}
foreach ($objBiosItem in $col32Bios)
{
$c.Cells.Item ($intRow, 4) = $objBiosItem.SerialNumber
}
foreach ($objSYSitem in $col32System)
{
$c.Cells.Item ($intRow, 5) = $objSYSitem.Manufacturer + $objSysItem.model
$c.Cells.Item ($intRow, 9) = „GBS: “ + $objSYSitem.TotalPhysicalMemory/1000000000
}
foreach ($objOSitem in $col32OS)
{
wenn ($col32System.domainrole = 1 - oder 0)
{
Schalter ($objOSitem.Version)
{
„5.0.2195“ {$c.Cells.Item ($intRow, 6) = „2000“ + $objOSitem.ServicePackMajorVersion}
„5.1.2600“ {wenn ($objOSitem.ServicePackMajorVersion - GT 0)
{$c.Cells.Item ($intRow, 6) = „Gewinn XP SP“ + $objOSitem.ServicePackMajorVersion}
sonst
{$c.Cells.Item ($intRow, 6) = „Gewinn XP“}
}
„6.1.7600“ {wenn ($objOSitem.ServicePackMajorVersion - GT 0)
{$c.Cells.Item ($intRow, 6) = „Gewinn-Vista SP“ + $objOSitem.ServicePackMajorVersion}
sonst
{$c.Cells.Item ($intRow, 6) = „Gewinn Vista“}
}
„6.1.7600“ {wenn ($objOSitem.ServicePackMajorVersion - GT 0)
{$c.Cells.Item ($intRow, 6) = „Gewinn 7 SP“ + $objOSitem.ServicePackMajorVersion}
sonst
{$c.Cells.Item ($intRow, 6) = „Gewinn 7“}
}
}
}
#$c.Cells.Item ($intRow, 6) = $objOSitem.Version
#$c.Cells.Item ($intRow, 26) = $objOSitem.ServicePackMajorVersion
}
foreach ($objProcItem in $col32Proc)
{
$c.Cells.Item ($intRow, 7) = $objProcItem.Name + „X“ + $objSysitem.NumberOfProcessors
$c.Cells.Item ($intRow, 8) = $objProcItem.CurrentClockSpeed
}
$intRow = $intRow + 1
}
$d = $c.UsedRange
$d.EntireColumn.AutoFit ()
$a.visible = $True
|