VisualBasic Visual Basic 2008 Probleme mit Timer Funktion

Radra

Newbie
Registriert
März 2009
Beiträge
4
Hallo,
ich möchte, dass wenn eine bestimmte Form - in meinem Fall Form2 - 10 Sekunden lang offen steht, der Computer sich automatisch abschaltet. Also "Shell(Shutdown -s)" :)

Doch wie stelle ich dass ein, dass er sich nach 10 Sekunden automatisch herunterfährt? Braucht man dazu einen Timer? Entschuldigung, bin noch blutiger Anfänger ^^. Hab auch schon lange gegoogled, aber nichts gefunden :(
Könnte mir jemand einen code posten ? :( Danke für eure Hilfe =)

Mfg Radra ;)
 
da kann man so machen, ja

du fügst deine Form einen Timer hinzu. Du stellst das "intervall" des Timers auf 10 sekunden (also 10000). Jetzt schreibst du die Methode, die das Timer.Tick-Event abgreift. Dort rein schreibst du den shutdown-Aufruf.

Jetzt musst du nur noch in der Laden-Methode (Event Form.Load) die Enabled-Property des Timers auf "true" setzen.


Etwa so:

Code:
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Timer1.Enabled = True
    End Sub

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

        'hier shutdown

    End Sub
End Class
 
Super danke! =D

Jetzt hätte ich noch eine Frage :).

Ich will für mein Kind ein Programm programmieren, dass ein bestimmter Prozess nicht aufgemacht werden kann.

Also zum Beispiel

Name = "Skype.exe"
For Each Skype In Process.GetProcessesByName("Skype")
Skype.Kill()

Nur das Problem ist, dass dieser Befehl Skype einfach nur einmal zumacht, aber wenn man Skype danach aufmacht läuft es. Das Programm soll einfach im Hintergrund laufen und es soll skype nicht aufmachen lassen. Danke für eure Hilfe :D

EDIT: Ich habs :) Ich hab einfach einen Timer eingebaut =) Trotzdem danke :)

Public Class Form1

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

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Enabled = True
Me.Hide()
End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Name = "Skype.exe"
For Each Skype In Process.GetProcessesByName("Skype")
Skype.Kill()
Next
End Sub
End Class
 
Zuletzt bearbeitet: (Fehler in Quellcode)
du könntest auch einfach nen neuen benutzer in windows machen :)
 
Zurück
Oben