2 fragen zu vb 2008

ATdrag0N

Erfahrenes Mitglied
Hallo Leute,
ich habe da mal 2 fragen zu unterschiedlichen Themen.

1.)
Ich möchte denn Computer runter fahren, dies soll folgendermaßen aussehen,
ich mache ein hacken in einer checkbox damit möchte ich das runterfahren aktivieren,
in ein Textfeld möchte ich die Uhrzeit angeben wann der windows runterfahren soll.
Aktiviert werden soll das ganze mit ein hacken in der checkbox.

2.)
Wie bekomme ich das hin das wenn ich eine taste im Spiel drücke,
das mein prog dann die taste solange weiter simuliert das sie gedrückt sei bis ich die taste ein 2 mal drücke.
Das heißt wenn ich die taste drücke, soll das prog die solange weiter simulieren bis ich dich gleiche taste wieder drücke, dann soll es mit der Simulation aufhören.

Ich hoffe ihr könnt mir weiter helfen dabei,
bin noch sehr unerfahren, daher würde ich mich freuen wenn ihr mir auch denn Code dazu bereit stellt.

Ich weiss einfach aus copy und paste lernt man nichts :)
 
Mh ok,
aber wie versehe ich jetzt denn code:


Code:
    Private Sub start_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles start.Click
        Dim oBetriebssystem, oEigenschaft As Object

        oBetriebssystem = GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}" & _
                            "//./root/cimv2").ExecQuery("SELECT * FROM Win32_OperatingSystem")

        If shutdown.Checked = True Then
                For Each oEigenschaft In oBetriebssystem
                    oEigenschaft.Win32Shutdown(2 + 4)
                Next
        End If
    End Sub

Mit einer Zeit Angabe bzw eine Uhrzeit ( zbsp. 05:00 Uhr ) die man in ein Textfeld eingeben kann,
damit er runterfährt?
 
Also ich hab damals auch ein Programm geschrieben was den PC zu time X runterfährt.

Sollte zwar nicht die beste lösung sein, funkioniert aber ;)

zum starten
Code:
        Dim shutdown As New System.Diagnostics.Process()
        shutdown.StartInfo.FileName = "C:\WINDOWS\system32\shutdown.exe"
        shutdown.StartInfo.Arguments = "-s -t " & TextBox1.Text
        shutdown.Start()

zum abbrechen
Code:
        Dim shutdown As New System.Diagnostics.Process()
        shutdown.StartInfo.FileName = "C:\WINDOWS\system32\shutdown.exe"
        shutdown.StartInfo.Arguments = "-a"
        shutdown.Start()

Legende:
-a = Abort (Abbrechen)
-s = Shutdown (Herunterfahren)
-t = Time (Zeit)

Peter86
 
Du liest aus der Textbox die Zeit aus, die angegeben wurde, und nimmst einen Timer, der 1x pro Sekunde tickt... dann verkleinerst du die TimeSpan mit der Zeit um 1 Sekunde und wenn sie dann Null ist, startest du das Runterfahren.
Oder du setzt den Interval des Timers gleich auf die eingegebene Zeit in ms.
 
hallo,
ich möchte schon bei mein obriegen Code bleiben, zwecks runter fahren.

Ich habe hier ein timer gefunden, der bei Zeitablauf eine Action ausführen kann.

Hier mal der Code:

Code:
    Private Sub levler1button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles levler1button.Click
            levler1timer.Start()
            levler1timer.Interval = 1000
    End Sub


    Private Sub levler1timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles levler1timer.Tick

        levler1sec.Text = (levler1sec.Text - 1).ToString("00")
        If levler1sec.Text = -1 Then

            levler1sec.Text = 59
            levler1min.Text = levler1min.Text - 1
        End If
        If levler1min.Text = -1 Then

            levler1timer.Stop()
            levler1min.Text = 0
            levler1sec.Text = "00"
            MsgBox("Test")
        End If

    End Sub

Aber ich möchte nicht Minuten und Sekunden eintragen, sondern eine Uhrzeit wann er runter fahren soll.

Bitte helft mir, habe die ganze Nacht vergäblich nach einer Lösung gesucht und für ein Neuling ist das nicht leicht.
 
Code:
Dim time As String = TimeOfDay
        If time = TextBox1.Text Then
            Timer1.Stop()
            MsgBox("Test")
        End If
 
Zuletzt bearbeitet:
hallo peter86,
habe dein code ausprobiert,
aber leider ohne erfolg.
So sieht der code jetzt aus:

Code:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim time As String = TimeOfDay
        If time = TextBox2.Text Then
            Timer1.Stop()
            MsgBox("Test")
        End If
    End Sub

Eingetragen habe ich:

20:00

desweiteren habe ich versucht diesen code:

Code:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim time As String = TimeOfDay
        If time = TextBox2.Text And TextBox4.Text Then
            Timer1.Stop()
            MsgBox("Test")
        End If
    End Sub

Hier habe ich in der ersten textbox: 20 und in der 2 textbox: 00
eingetragen, ebenfals ohne erfolg.
 
Zurück