Hallo Ihr Lieben,
ich hab da mal ne Frage.. ich hab in dem Testrechner 16GB RAM drin .. habe 2 verschiedene Auslesevarianten getestet
Variante 1
Variante 2
Aufruf Beispiel:
Quelle: vbarchiv.net/tipps/tipp_1738-r…er-via-wmi-ermitteln.html
das Problem was ich bei beiden habe ist, dass des Ding nichts genau schreibt .. immer nur 15,96 oder irgendwas in der Richtung .. was mach ich falsch das es nicht die 16GB anzeigt oder die 8 oder 4 GB oder 256mb
wäre schön wenn mir da mal jemand helfen würde...
wenn wir schon dabei sind.. gibts noch ne Möglichkeit herauszufinden wieviele Bänke belegt sind 1 von 2 oder 2 von 2 oder sowas halt
Danke
ich hab da mal ne Frage.. ich hab in dem Testrechner 16GB RAM drin .. habe 2 verschiedene Auslesevarianten getestet
Variante 1
Variante 2
VB.NET-Quellcode
- ' Verfügbaren und freien Arbeitsspeicher via WMI ermitteln
- Public Sub GetRAMInfo(ByRef sTotal As String, ByRef sFree As String)
- On Error GoTo ErrHandler
- Dim oWMI As Object
- Dim oResult As Object
- Dim oItem As Object
- Dim sSQL As String
- ' Verweis auf WMI erstellen
- Set oWMI = GetObject("winmgmts:")
- ' WMI-Abfrage für den verfügbaren RAM
- sSQL = "Select TotalPhysicalMemory from Win32_ComputerSystem"
- Set oResult = oWMI.ExecQuery(sSQL)
- For Each oItem In oResult
- sTotal = FormatRam(oItem.TotalPhysicalMemory)
- Exit For
- Next
- ' WMI-Abfrage für den freien Arbeitsspeicher
- sSQL = "SELECT FreePhysicalMemory from Win32_OperatingSystem"
- Set oResult = oWMI.ExecQuery(sSQL)
- For Each oItem In oResult
- sFree = FormatRam(oItem.FreePhysicalMemory * 1024)
- Exit For
- Next
- On Error GoTo 0
- Exit Sub
- ErrHandler:
- End Sub
- ' Hilfsfunktion zur Formatierung der ermittelten Bytes
- ' in KB, MB bzw. GB
- Private Function FormatRam(ByVal oRam As Variant) As String
- ' RAM-Angabe formatieren
- If (((oRam / 1024) / 1024) / 1024) >= 1 Then
- ' GB
- FormatRam = Format(((oRam / 1024) / 1024) / 1024, "###,##0.0#") & " GB"
- ElseIf ((oRam / 1024) / 1024) >= 1 Then
- ' MB
- FormatRam = Format((oRam / 1024) / 1024, "###,##0.0#") & " MB"
- Else
- ' KB
- FormatRam = Format(oRam / 1024, "###,##0.0#") & " KB"
- End If
- End Function
Aufruf Beispiel:
Quelle: vbarchiv.net/tipps/tipp_1738-r…er-via-wmi-ermitteln.html
das Problem was ich bei beiden habe ist, dass des Ding nichts genau schreibt .. immer nur 15,96 oder irgendwas in der Richtung .. was mach ich falsch das es nicht die 16GB anzeigt oder die 8 oder 4 GB oder 256mb
wäre schön wenn mir da mal jemand helfen würde...
wenn wir schon dabei sind.. gibts noch ne Möglichkeit herauszufinden wieviele Bänke belegt sind 1 von 2 oder 2 von 2 oder sowas halt
Danke