Zum Inhalt springen

Windows Domäne - abfrage RAM


Kazume

Empfohlene Beiträge

Hallo Community,

ich würde gerne wissen wie man über die Domäne abfragen kann, welcher Rechner wieviel Ram verbaut hat.

Gedacht habe ich es mir so :

Ich erstelle ein kleines Script (vbs oder etwas über die Powershell) was mir den RAM ausgibt inklusive den Rechnernamen.

Das soll dann noch in eine .txt File geschrieben werden. (Am liebsten für alle PCs eine .txt file, sodass ich nicht von jedem PC eine .txt habe.)

Das Script würde ich dann als Anmeldescript über die AC verteilen.

Nun zur meiner eigentlichen Frage.

Wie würde das Script aussehen? Hab schon stunden mit googlen verbracht, das bisher einzige wäre WMI oder Psinfo. Psinfo funktioniert leider nur teils - es gibt mir alles aus nur nicht den RAM.

Bei WMI hab ich noch nichts einsteigerfreundliches gefunden.

Link zu diesem Kommentar
Auf anderen Seiten teilen


<# Das Programm ist Vorlage für: 

 "hole Rechnerliste, prüfe jeden Rechner, ob er erreichbar ist und führe bei "ja" folgendes aus."



 Test-Connection mit der Option -quiet gibt ein "true" zurück, wenn der Rechner an ist.

 Ist der Rechner aus, gibt es ein "False" als Antwort

 Im Pfad c:\temp muß eine Textdatei namens rechnerliste.txt existieren, in der die einzelnen

 Rechnernamen stehen (pro Zeile ein Eintrag). ACHTUNG Gag: nach dem letzten Eintrag keinen

 Zeilenumbruch machen, sonst "Test-Connection : Das Argument für den Parameter "ComputerName" 

 kann nicht überprüft werden. Das Argument ist NULL oder leer." #>


$cn = @(Get-content -path c:\temp\rechnerliste.txt)


foreach ($i in $cn)

{

$ping = Test-Connection -Count 1 -computername $i -quiet 



if ($ping -eq 'true')

{ 

  Invoke-Command -ComputerName $i { get-wmiobject -Class win32_product } | Select-Object Name, version, installdate 

 }

else

{

 Write-Output $i "ist aus" 


}


}

Hier eine meiner "quick and dirty" Powershell-Vorlagen.

Für Dich noch zu tun:

* Die Zeile mit "Invoke-command" für Deine Bedürfnisse anpassen. Irgendwas mit Win32_PhysicalMemory vermutlich.

* das Ergebnis in eine Datei rausschreiben lassen. Irgendwas mit Out-File -append in der nächsten Zeile sollte es tun.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Vielen Dank für die antworten.

Bin seit Stunden wieder am probieren, soweit klappt auch alles was ich haben möchte.

$colSlots = Get-WmiObject -Class win32_PhysicalMemoryArray

$colRAM = Get-WmiObject -Class win32_PhysicalMemory

$memory = Get-WmiObject -Class win32_PhysicalMemory

$name = HOSTNAME.EXE

$mem = Get-WmiObject -Class Win32_ComputerSystem 



("Computer  " + $mem.DnsHostName + "    Ram  " + $mem.TotalPhysicalMemory/1mb) | Out-File PFAD


$colSlots | ForEach {“Total Number of DIMM Slots: ” + $_.MemoryDevices} | Out-File PFAD -append


$colRAM | ForEach {

“Memory Installed: ” + $_.DeviceLocator|  PFAD -append

    "Memory Size: " + ($objRAM.Capacity / 1GB) + " GB" | PFAD -append

}
Es wird eine Exel Datei im angegebenen Pfad erstellt.
Computername  ******    Ram  8191.1796875

Total Number of DIMM Slots: 4

Memory Installed: DIMM1

Memory Size: 4 GB

Memory Installed: DIMM2

Memory Size: 4 GB

Was ich noch nicht ganz verstehe ist Dimm Slots. Bei einigen PC's sind nur 2 Ram-Slots vorhanden, allerdings wird auch dort DIMM Slots: 4 ausgegeben.

Die win32_PhysicalMemory und win32_PhysicalMemoryAray können anscheinend nur Slots anzeigen die belegt sind - leere werden nicht mit ausgegeben (schade!!!).

Die Excel.Application scheint mir sehr komplex zu sein, damit alle PCs ein einem Excel Sheet schreiben.

Ich lasse alle Computer die Datei über das Active Directory als Anmeldescript ausführen, brauche also kein Remote.

Bearbeitet von Kazume
Link zu diesem Kommentar
Auf anderen Seiten teilen

Sowas sollte ne Softwareverteilung bzw Softwareinventarisierung beherschen. Sprich da gibt es sicherlich schon etwas fertiges.

Bestimmt gibt es da schon etwas fertiges.

Es geht mir in erster Linie um den Lerneffekt.

Hab meine Ausbildung zum Fachinformatiker für Systemintegration am 01.06 begonnen und bin fleißig am tüfteln. :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

So aus der Hüfte geschossen: Du bist sicher, daß sich gleichzeitig anmeldende Kollegen nicht beim zeitgleichen schreiben auf die Datei ins Gehege kommen? Wenn Du es für Dich alleine testest, dann wird es natürlich immer funktionieren ;-)

Es gibt (auch kleine) Firmen, die beginnen wie auf Kommando früh zur gleichen Zeit. Selbst bei 10 Leuten wird das sicher ein Spaß! *bg*

Bei meiner Lösung läßt man das mal tagsüber laufen und gut ist's.

Deine weiteren Abfragen schreibst Du als -scriptblock {inhalte} in die invoke-command Syntax.

Aber mach ruhig so. Du lernst was dabei. hehe

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...