Visualizzazione dei risultati da 1 a 3 su 3

Discussione: % Carico CPU

  1. #1

    % Carico CPU

    Buongiorno a tutti. Ho iniziato a sviluppare un'applicazione che tenga sotto controllo parametri come la percentuale di carico della CPU o l'utilizzo della RAM. Sto programmando in VB.net e per ottenere queste informazioni voglio usare la classe "Performance counter", ma non riesco a settare i vari parametri. Mi spiego meglio: bisogna impostare la proprietà "CategoryName" e le passo il valore "Processor" poi chiede la proprietà "CounterName", ma non so cosa devo scrivere e lo stesso per la proprietà "IstanceName". So che sono queste le proprietà richieste perchè ho cercato un po' in internet e su msdn. Se qualcuno mi può aiutare a capire cosa devo mettere in queste proprietà per avere almeno CPU e RAM, o meglio ancora se trovate una guida. Grazie in anticipo!!!

  2. #2
    Utente di HTML.it L'avatar di Vinsent
    Registrato dal
    May 2011
    Messaggi
    314
    Mi era già "salita la carogna" cercando di capire come far funzionare la classe quando mentre cercavo sulla casella degli strumenti ho visto PerformanceCounter .
    L' ho aggiunto alla form, smanettato sulle proprietà, qualche 'console.writeline' per vedere le proprietà...:
    codice:
    Imports System.Diagnostics
    
    Public Class Form1
    
        Dim PC_cpuTot As New PerformanceCounter
        Dim PC_cpu0 As New PerformanceCounter
        Dim PC_cpu1 As New PerformanceCounter
    
        Private Sub Form1_Load() Handles MyBase.Load
    
            Me.TopMost = True
    
            With PC_cpuTot
                .CategoryName = "processore"
                .CounterName = "% tempo processore"
                .InstanceName = "_total"
            End With
    
            With PC_cpu0
                .CategoryName = "processore"
                .CounterName = "% tempo processore"
                .InstanceName = "0"
            End With
    
            With PC_cpu1
                .CategoryName = "processore"
                .CounterName = "% tempo processore"
                .InstanceName = "1"
            End With
    
        End Sub
    
        Private Sub Button1_Click() Handles Button1.Click
            Timer1.Interval = 1000
            Timer1.Start()
        End Sub
    
        Private Sub Timer1_Tick() Handles Timer1.Tick
            Label1.Text = "Totale:  " & System.Math.Round(PC_cpuTot.NextValue, 0) & "%"
            Label2.Text = "CPU0:  " & System.Math.Round(PC_cpu0.NextValue, 0) & "%"
            Label3.Text = "CPU1:  " & System.Math.Round(PC_cpu1.NextValue, 0) & "%"
        End Sub
    
    End Class
    Con 'InstanceName' si imposta la cpu, avendo un dualcore:

    _total = totale
    0 = cpu1
    1 = cpu2

    il resto del codice penso sia banale...
    I PerformanceCounter li ho aggiunti e impostati via codice giusto come esempio, se provi ad usare direttamente il controllo aggiungendolo dalla casella degli strumenti ti basta fare clic sulle proprietà e trovi "tanta roba" già pronta...
    ciao

  3. #3
    Grazie mille!!! Sono riuscito. Inoltre cercando ulteriormente in internet ho scoperto che se si avvia "Performance Monitor" che è già installato su windows 7 professional(li altri non lo so), vengono fuori vari monitor, con varie informazioni riguardanti la CPU, RAM e tutto quello che vuoi. Se smanetti un po' c'è un elenco di tutte le informazioni del PC e ti fa scegliere la categoria (CategoryName), il contatore (CounterName), e l'istanza (InstanceName), basta che traduci in inglese le parole li elencate e il gioco è fatto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.