PerfomanceCounter Progressbar

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Gather.

    PerfomanceCounter Progressbar

    Guten morgen.

    ich weis nicht, ob ich jetzt auf dem Schlauch stehe.
    Habe 3 Performance Counter und 3 Progressbars.

    Hier werden mir die Werte CPU, verfügbarer RAM u. Speicherauslastung in % angezeigt.
    Funktioniert auch in den labels werden mir die Werte angezeit und bei CPU und RAM auch in der Progressbar.

    Nur in der Progressbar bei Speicherauslastung nicht richtig. Im Label schon siehe Bilder.

    Die einstellungen bei den Progressbars sind alle gleich.

    Hier mal der Code

    VB.NET-Quellcode

    1. Private Sub Timer3_Tick(sender As Object, e As EventArgs) Handles Timer3.Tick
    2. Dim cpu As Integer
    3. cpu = CInt(PerformanceCounter1.NextValue)
    4. ProgressBar1.Value = cpu
    5. Label17.Text = CStr(cpu) + " % CPU Auslastung"
    6. '------------------
    7. Dim ram As Integer
    8. ram = CInt(PerformanceCounter2.NextValue)
    9. ProgressBar2.Value = ram
    10. Label18.Text = CStr(ram) + " MBytes Verfügbarer Arbeitsspeicher"
    11. '------------------
    12. Dim Arbeitsspeicher As Integer
    13. Arbeitsspeicher = CInt(PerformanceCounter3.NextValue)
    14. ProgressBar3.Value = Arbeitsspeicher
    15. Label21.Text = CStr(Arbeitsspeicher) + " % RAM Speicherauslastung"
    16. '--------------------
    17. End Sub


    Gruß
    Manni
    Bilder
    • Speicherauslastung.jpg

      10,14 kB, 245×146, 206 mal angesehen
    • Progressbar3.jpg

      28,42 kB, 224×350, 68 mal angesehen
    • PerformanceCouter3.jpg

      30,41 kB, 226×324, 71 mal angesehen
    Ich werd mir das jetzt nicht nachbauen, da ich mit PerfCountern noch nicht gearbeitet habe, aber es klingt, als ob der ProgressValuewert bei 36% eben 0,36 wäre. Fehlt da ggf. ne Umrechnung in Prozent?
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @manni4545 oder / und das Maximum geeignet setzen.
    Die Progressbar kann nur Integer-Werte,
    Besser wäre da ein UserControl, dass einfach den betreffenden Teil ausmalt.
    Eine Scrollbar impliziert, dass man da was mit der Maus einstellen könnte.

    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

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

    Hm. Bei mir funktioniert das Ganze. Allerdings zeigt wer mir weniger an als tatsächlich verbraucht wird.
    Da es dir ja um den Totalen RAM verbraucht geht, machs doch einfach so:

    VB.NET-Quellcode

    1. (My.Computer.Info.AvailablePhysicalMemory / My.Computer.Info.TotalPhysicalMemory * 100)
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!