IP alle 3 Sekunden online/offline prüfen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von HeyHo44.

    IP alle 3 Sekunden online/offline prüfen

    Hallo bin absoluter Anfänger und würde gern mein Raspberry Pi den aktuellen Status Online/Offline angezeigt kriegen, das funktioniert aber nur beim Programm-Start.
    Kann man so programmieren, dass alle 3 Sekunden der Status erneut geprüft wird?

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click
    3. End Sub
    4. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    5. If My.Computer.Network.Ping("IPxxx") Then
    6. Label1.Text = "Online"
    7. Label1.ForeColor = Color.Green
    8. Else
    9. Label1.Text = "Offline"
    10. Label1.ForeColor = Color.Red
    11. End If
    12. End Sub
    13. End Class


    Würde mich über eure Hilfe freuen.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    @HeyHo44 Willkommen im Forum.
    Pack den Code aus der Form_Load in eine separate Prozedur.
    Zieh Dir im Designer einen Timer auf die GUI und gib dem bei Interval eine 3000 ein (3000 ms).
    Doppelklick auf das Timer-Symbol, und in diese Prozedur trägst Du oben genannten Code ein.
    In der Form_Load machst Du dann Timer1.Start() (unter der Voraussetzung, dass Dein Timer Timer1 heißt).
    Feddich.
    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!
    Also fertigen Code bekommst du nicht. Hier wird hilfe zur selbsthilfe geleistet. Ich gehe also davon aus, dass du was lernen willst und Eigeninitiative zeigst.

    In dem Link steht folgender Beispiel Code:

    VB.NET-Quellcode

    1. Private Sub InitializeTimer()
    2. ' Run this procedure in an appropriate event.
    3. ' Set to 1 second.
    4. Timer1.Interval = 1000
    5. ' Enable timer.
    6. Timer1.Enabled = True
    7. Button1.Text = "Enabled"
    8. End Sub
    9. Private Sub Timer1_Tick(ByVal Sender As Object, ByVal e As EventArgs) Handles Timer1.Tick
    10. ' Set the caption to the current time.
    11. Label1.Text = DateTime.Now
    12. End Sub
    13. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    14. If Button1.Text = "Stop" Then
    15. Button1.Text = "Start"
    16. Timer1.Enabled = False
    17. Else
    18. Button1.Text = "Stop"
    19. Timer1.Enabled = True
    20. End If
    21. End Sub


    Mach dir nen neuen Projekt und dort ne Form mit einem Button, Label und eben dem Timer. Alles (auch der Timer) findest du in der Toolbox wo deine Steuerelemente auf die Form ziehen kannst. Die Steuerelemente müssen wie oben im code benannt werden. Dann kannst du den Code in der Code Ansicht zur Form 1:1 rein kopieren. Im FormlLoad event musst du.
    InitializeTimer() aufrufen. Wenn alles läuft, kannst du per Haltepunkt (Brakepont) und Einzelschritt schauen was dein Programm macht und daraus lernen. Das erworbene wissen kannst du dann in dein anderes Projekt übertragen. Schau dir unbedingt die Links in meiner Signatur an!
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen