Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 05:03

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[VB.Net 2010] Programm überwachen

Discussion on [VB.Net 2010] Programm überwachen within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
Napf's Avatar
 
elite*gold: 0
Join Date: Apr 2012
Posts: 64
Received Thanks: 17
Smile [VB.Net 2010] Programm überwachen

Hallo zusammen,
ich stelle heute mal keine Frage sondern möchte euch etwas zur verfügung stellen.

Ich nutze für meinen Windows Server 2008 ein selbstprogrammiertes Programm welches mir erlaubt Programme zu überwachen, Laufen sie? Geben sie keine Rückmeldung mehr?

Stürzt ein Programm ab, oder meldet sich nciht mehr (Keine rückmeldung),
startet mein Programm das Programm neu und sendet eine Mail an Empfänger XXXXXX

Es ist ein kleiner übersichtlicher Code, leicht selbst zu Programmieren.

Hier für euch der Code, eine oberfläche müsst ihr euch selbst zusammenbasteln.

Es ist Windows Forms, vergesst die label nicht und den Button sonst bekommt ihr einen Fehler.

Es ist euch erlaubt den Code zu nutzen, verändern oder zu erweitern wie ihr wollt.


Viel spass damit, ich würde mich über ein "Thanks" freuen

Code:
Option Strict On
Imports System.Net.Mail

Public Class Form1

    Private t As New Threading.Thread(AddressOf Thread)
    Private p As New Process()
    Private test, erfolg, fehlg, neu As Integer


    Private Sub Thread()

        'Hier gebt ihr an welches Programm überwacht werden soll. Versucht alles aus zu füllen. Wenn ihr keine Startargumente benötigt nehmt es ganz heraus.
        '
        p.StartInfo.FileName = ""
        p.StartInfo.WorkingDirectory = ""
        p.StartInfo.Arguments = ""
        p.StartInfo.WindowStyle = ProcessWindowStyle.Normal
        p.Start()

        'Das ist die Zeit bis zum 1. Test in ms, diese Zeit sollte min. 1 Minute betragen, da ein
        'Programm sich beim starten gern nciht zurückmeldet
        Threading.Thread.Sleep(60000)

        While True

            test = test + 1
            Me.Invoke(Sub() Label4.Text = test.ToString)

            If Not p.Responding Then
                Try
                    p.Kill()
                    p.Start()

                    neu = neu + 1
                    Me.Invoke(Sub() Label7.Text = neu.ToString)

                Catch ex As InvalidOperationException
                    p.Start()

                    neu = neu + 1
                    Me.Invoke(Sub() Label7.Text = neu.ToString)

                Catch ex As Exception

                    MessageBox.Show(ex.Message & vbCrLf & ex.StackTrace)

                End Try

                fehlg = fehlg + 1
                Me.Invoke(Sub() Label6.Text = fehlg.ToString)

                'Mail - Hier tragt ihr eure Maildaten ein damit das Programm euch eine Mail sendet falls ein Problem auftritt!
                '
                Dim Msg As New MailMessage
                Dim myCredentials As New System.Net.NetworkCredential
                myCredentials.UserName = "EURE MAIL ADRESSE"
                myCredentials.Password = "EUER PASSWORT"

                Msg.IsBodyHtml = False

                Dim mySmtpsvr As New SmtpClient()
                mySmtpsvr.Host = "SMTP SERVER"
                mySmtpsvr.Port = 25

                mySmtpsvr.UseDefaultCredentials = False
                mySmtpsvr.Credentials = myCredentials


                Msg.From = New MailAddress("ABSENDER")
                Msg.To.Add("EMPFÄNGER")
                Msg.Subject = "BETREFF"
                Msg.Body = "Unerwarteter Neustart - Programm wurde Neugestartet" & vbCrLf & "Getestet: " & test & vbCrLf & "Erfolg: " & erfolg & vbCrLf & "Fehlgeschlagen: " & fehlg & vbCrLf & "Neugestartet: " & neu & _
                    vbCrLf & vbCrLf & "Bitte prüfe das Programm auf Fehler falls es in letzter Zeit häufiger auftritt!"
                mySmtpsvr.Send(Msg)


                'Das ist die Zeit bis zum 1. Test in ms, diese Zeit sollte min. 1 Minute betragen, da ein
                'Programm sich beim starten gern nciht zurückmeldet
                Threading.Thread.Sleep(60000)

            Else

                erfolg = erfolg + 1
                Me.Invoke(Sub() Label5.Text = erfolg.ToString)

            End If

            'Hier trag ihr ein das alle X ms geprüft werden soll. 1500 sind 1,5 sek.
            '
            Threading.Thread.Sleep(1500)

        End While

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        t.Start()
    End Sub

    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing

        If t.IsAlive Then
            t.Abort()
        End If

    End Sub

End Class
Napf is offline  
Thanks
1 User
Reply

Tags
.net, 2010, vb


Similar Threads Similar Threads
Internetverkehr von Programm überwachen
04/05/2012 - Technical Support - 8 Replies
Gibt es ein tool, das Den gesamten internetverkehr eines programms überwacht und rausfindet auf welche seiten es gerade zugreift?? Mflg joniator :D
GM befehle überwachen .
05/06/2011 - Metin2 Private Server - 4 Replies
Guten tag . Ich habe einen eigenen Server und ein GM macht allen immer GM Rechte . Wie kann ich überwachen welcher GM welche Befehle macht ? MFG Marcel Danke
Temp überwachen
03/23/2011 - General Coding - 0 Replies
Hi ich suche ein programm das den temp ordner überwach kennt jemand so ein tool oder kann mir jemand eins coden danke schonmal im voraus Mfg middey
Desktop überwachen?
01/12/2011 - Technical Support - 14 Replies
Guten Abend, ich wollte mal fragen, ob es ein Programm oder eine Methode gibt, einen PC in unseren Haus überwachen zu lassen? Habe ja schon mal so etwas Ähnliches gefragt, nun habe ich durch jmd. herausbekommen das mein Vater 'sieht' was ich mache, vllt. auch das hier. Nun wollte ich fragen, nach langem googlen D: , ob ihr vllt. ein Programm kennt, womit man einen PC im Haus *kontrollieren* kann. Oder durch irgendwelche anderen Methoden, Fritz Box, whatever. MfG,
[VB 2010] Klickbot im Programm?
06/16/2010 - .NET Languages - 1 Replies
Hallo liebe Leute, Ich habe gestern mein erstes Programm fertig gestellt, auf Wunsch eines Freundes. Nun möchte ich das im Programm abwechselnd zwei Knöpfe mit ner Pause automatisch gedrückt werden, also in diesem Schema. 1) Drück Knopf1 2) Pause von 10 Sek. 3) Drück Knopf2 4) Pause von 5 Sek. 5) Von vorne anfangen. Weiß jemand wie ich sowas mache?



All times are GMT +1. The time now is 05:04.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.