Überprüfen, wie viel RAM Installiert ist

  • VB.NET

Es gibt 22 Antworten in diesem Thema. Der letzte Beitrag () ist von Manawyrm.

    Überprüfen, wie viel RAM Installiert ist

    Hey, Hey

    Habe ein Frage kann man auslesen wie viel RAM man hat also 4GB z.B ?

    LG Keybladmaster
    Überschrift angepasst.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „FlashTek“ ()

    geh mal auf Computer -> System -> Installierter Arbeitsspeicher ;) (Win7)
    ^
    Forgett that shit (Falscher Tab....).

    Take that ;)
    v

    8-) faxe1008 8-)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „faxe1008“ ()

    Mit der Ausgabe bekommst du aber Bytes oder Kilobyte-Größe angezeigt. Wenn du das ganze dann z.B. von Byte auf KB stutzen willst, musst du es durch 1024 teilen, wenns dann von KB auf MB gestutzt werden soll, nochmals um 1024 teilen.
    M.f.G. Nitro-X
    Gute Spieler cheaten schlecht! 8-)

    Button1.Visible = False
    If Button1.Click then Shell ("C:\brain.exe")
    end if
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Den Code kenn ich nur die Umrechnung weiß ich ne so Genau...
    geht das so Ungefähr?

    VB.NET-Quellcode

    1. ProgressBar2.Value = My.Computer.Info.AvailablePhysicalMemory / 1024 ^ 2


    LG Keybladmaster
    ProgressBar2.Value = My.Computer.Info.AvailablePhysicalMemory / 1024 ^ 2
    Bezweifle ich doch eher.
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Nein. So nicht. Ich hab gemeint, du willst es als Label1.Text ausgeben?

    Ausserdem hab ich noch einen Fehler entdeckt.

    VB.NET-Quellcode

    1. My.Computer.Info.AvailablePhysicalMemory / 1024 ^ 2
    bringt dir (wenn man es korrekt ins Deutsche übersetzt) nur den momentan verfügbaren, also den freien RAM.

    Richtig, wäre dann also.

    VB.NET-Quellcode

    1. My.Computer.Info.TotalPhysicalMemory / 1024 ^ 3

    TotalPhysicalMemory, also totaler physischer Speicher.
    Das ganze muss für ein Ergebnis in GB, ganze 3 mal geteilt werden, sonst erhälst du nur ... MB RAM.
    M.f.G. Nitro-X
    Gute Spieler cheaten schlecht! 8-)

    Button1.Visible = False
    If Button1.Click then Shell ("C:\brain.exe")
    end if
    @Artentus

    Ach so...

    @Nitro-X

    Danke und wie ist das bei :

    VB.NET-Quellcode

    1. My.Computer.Info.AvailablePhysicalMemory
    2. My.Computer.Info.AvailableVirtualMemory


    EDIT :

    Wen ich das so Schreibe :

    VB.NET-Quellcode

    1. My.Computer.Info.TotalPhysicalMemory / 1024 ^ 3


    Dann bekomme ich eine Komma Zahl : 1,99...

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Keybladmaster“ ()

    Also, bei My.Computer.Info.AvailablePhysicalMemory handelt es sich, wie ich oben schon geschrieben hab um den freien verfügbaren Speicher.

    Bei My.Computer.Info.AvailableVirtualMemory handelt es sich um den verfügbaren freien Speicher in der Auslagerungsdatei.

    Wenn ich bei "VirtualMemory" falsch liege, verbessert mich bitte.

    Die Zahl die bei dir rauskommt, ist doch ganz normal... Das ist dein Arbeitsspeicher in Gigabyte.
    Bei deiner Berechnung ist also so gesehen nichts falsches drann.
    Manche Grafikkarten reservieren sich auch gerne mal etwas Speicher vom Arbeitsspeicher. On-Board-Grafikchipsätze, haben meist sogar keinen eigenen Speicher und nutzen dann den Arbeitsspeicher.

    Das nennt sich "dedizierter Speicher" oder auf englisch "dedicated memory".
    M.f.G. Nitro-X
    Gute Spieler cheaten schlecht! 8-)

    Button1.Visible = False
    If Button1.Click then Shell ("C:\brain.exe")
    end if

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Nitro-X“ ()

    Probier das:

    VB.NET-Quellcode

    1. MessageBox.Show((My.Computer.Info.TotalPhysicalMemory / 1024 / 1024 / 1024).ToString("0.0"))


    Dann hättest du deinen Ram in GiB in der MessageBox stehen.
    Mfg
    Vincent

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VincentTB“ ()

    @VincentTB

    Danke, Funktioniert also :

    VB.NET-Quellcode

    1. My.Computer.Info.AvailablePhysicalMemory ' Verfügbarer RAM
    2. My.Computer.Info.AvailableVirtualMemory ' RAM in Auslagerungsdatei
    3. My.Computer.Info.TotalPhysicalMemory ' Installierter RAM


    Was bewirkt das?

    VB.NET-Quellcode

    1. TotalVirtualMemory


    Wen ich das Recht Übersetze dann :
    Totaler Virtueller RAM ?
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Wenn wir schon beim Klugscheißen sind, dann richtig :D

    Er hat recht, wenn er sagt, dass 1 Gigabyte 1000 Megabyte sind.
    Sind ja Giga/Mega und damit SI-Prefixe.

    Unsere in der IT gebräuchlichen Prefixe welche 2er Potenzen (1024) sind, werden als GiB -- Gibibyte und Mebibyte (MiB) angegeben :D

    Viele Grüße,
    Manawyrm

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Manawyrm“ ()

    Kevin Hombre schrieb:

    My.Computer <=> Griff in die Toilette

    Wie kommst du auf diese Schlussfolgerung?! Ich zitiere mal einen Teil aus dem Buch, welches fast alle von euch empfehlen:

    Klaus Löffelman - PDF-Seite 271 des zweiten Teils schrieb:

    OOP-Puristen, lasst euch gesagt sein: Visual Basic hat all das, was zum OOP-Programmieren benötigt wird. Und ich persönlich, der ich in C# und Visual Basic 2005 eigentlich gleichermaßen gut zu Recht komme, programmiere in VB2005 lieber, weil meiner Meinung nach Visual Basic-Editor und -Background-Compiler ein schnelleres und effizienteres Arbeiten als die C#-Äquivalenten gestatten. Wenn ihr Funktionalitäten, die in diesem Buchteil besprochen werden, wie beispielsweise das Anwendungsframework oder den My-Namespace nicht nutzen wollt – niemand wird dazu gezwungen! Macht euch die Arbeit halt schwerer, als sie sein müsste, und braucht dann eben länger zum Ziel.
    Euer Hauptargument, dass für die Vereinfachung Komponenten verwendet werden, die eigentlich nicht zum .NET-Framework gehören, ist – mit Verlaub gesagt – ziemlicher Unsinn. Die Visual- Basic.dll ist Bestandteil des Frameworks, und alle Vereinfachungen, mit denen wir vielleicht auch die »alten« VB6ler überzeugen könnten, bei »uns mitzumachen«, sind dort implementiert. Und wenn ihr sagt, ihr wollt auf diese Vereinfachungen verzichten, weil ihr Gerüchten glaubt, die sagen, dass diese Visual Basic-eigenen Dinge in Zukunft aus dem Framework verbannt werden, dann dürft ihr übrigens gar nicht mehr in Visual Basic programmieren. Denn, und das ist wichtig: Ohne die Visual- Basic.dll läuft überhaupt kein Visual Basic-Programm, egal welchen Ansatz (einfach oder .NET-puristisch) ihr verfolgt oder welcher Komponenten aus dem Framework ihr euch bedient. Und wenn ihr wisst, dass die VisualBasic.dll erstens sowieso genauso zentraler Bestandteil des Frameworks ist, wie alle anderen .NET-Assemblies und sich zweitens diese Vereinfachungen wie Anwendungsframework und My-Namespace auch dort befinden, riskiert doch mal einen Blick in die folgenden Seiten. Viele Probleme lassen sich damit wirklich einfach und schnell lösen – ich kann’s am Beispiel beweisen!


    Ich finde das vollkommen richtig und finde den My-Namespace super, da er viele Vereinfachungen bietet - auch unter My.Computer.

    @Manawyrm
    Ist das dann jetzt richtig mit 1024 oder, wie Bluespide sagt, mit 1000?
    Mfg
    Vincent