Jump to content



προγραμμα παρακολουθησης cpu-Visual Basic-


Reselie

Recommended Posts

Γεια σας παιδια,

μηπως ξερει καποιος απο εσας πως να συσχετισω μια Proggress bar,με την χρηση cpu του συστηματος?

θα ημουν ευγνωμον! ευχαριστω προκαταβολικα!

αυτο που θελω να κανω ειναι core temp-like αλλα αντι για ποσοστα με progress bars..:nerd:

Link to comment
Share on other sites

Αν μιλαμε για vb.net, αυτο που χρειαζεσαι ειναι το System.Diagnostics.PerformanceCounter class. Κοιτα στo MSDN για το πως συντασσεται. Αυτο θα σου επιστρεψει την τιμη της cpu, την οποια θα την θεσεις τιμη του ProgressBar, και θα βαλεις και εναν Timer, να "ανανεωνει" συνεχως και θα εισαι ετοιμος :T:

Link to comment
Share on other sites

εγραψα δοκιμαστικα (το εκανα πειραματικα σαν button για να δοκιμασω)

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Public [U][B]class[/B][/U] PerformanceCounter _
Inherits Component _
Implements ISupportInitialize

Dim pc As PerformanceCounter
pc.NextValue()
ProgressBar1.Value = pc.NextValue

Αλλα μου χτυπαει το class σαν "keyword is not a valid intentifier"

Link to comment
Share on other sites

Δεν μπορείς να ορίσεις class μέσα σε function...!

Σβήσε το "Public class PerformanceCounter Inherits Component Implements ISupportInitialize"

Edit:

Δήλωσε το namespace στην αρχή

Imports System.Diagnostics

Δες και στο msdn για την class του PerformanceCounter, έχει και παράδειγμα...

Επίσης δεν αρκεί να δηλώσεις...:

Dim pc As PerformanceCounter

Θα πρέπει να κάνεις και init το object σου...:

pc = New PerformanceCounter("..", "..", False)

όπου "..." ο system counter που χρειάζεσαι, πχ "TotalProcessorTime"

Link to comment
Share on other sites

λοιπον, φτιαξε στη φορμα σου ενα Timer και ενα Progressbar και στον κωδικα:

Public Class Form1

Public cpu_monitor As New System.Diagnostics.PerformanceCounter("Processor", "% Processor Time", "_Total")

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Timer1.Interval = 1000

Timer1.Enabled = True

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

ProgressBar1.Value = cpu_monitor.NextValue()

End Sub

End Class

μπορεις να αλλαξεις την τιμη του Timer1.Interval, αναλογα με το ποσο γρηγορα θελεις να γινεται η ανανεωση. 1000 = 1 δευτερολεπτο :T:

Link to comment
Share on other sites

τελικα,αυτο οσο κι αν το'ψαξα, δεν βρηκα κατι. Μαλλον κατι παιζει με το nextvalue, οπως μου ειπες στο msn. Μπορει να λυθει, αν δηλωσουμε ακομα ενα διαφορετικο PerformanceCounter.

edit: ή πιο απλα, χρησιμοποιωντας μια μεταβλητη :)

Link to comment
Share on other sites

ευχαριστω παιδες! επειδη σημερα εστηνα την maximus(τhnx Πετρο!) δεν προλαβα να κανω κατι..αυριο το πρωι θα δοκιμασω! εννοητε μολις τελειωσω θα κανω ενα guide*

*θα προσπαθησω τουλαχιστον:p

thnx και παλι!!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Δημιουργία...

Important Information

Ο ιστότοπος theLab.gr χρησιμοποιεί cookies για να διασφαλίσει την καλύτερη εμπειρία σας κατά την περιήγηση. Μπορείτε να προσαρμόσετε τις ρυθμίσεις των cookies σας , διαφορετικά θα υποθέσουμε ότι είστε εντάξει για να συνεχίσετε.