Codigo en Visual Basic para programar apagado de Windows

No soy mucho de utilizar SO de Micr$oft. [mode ironic on] Pero hace algunas noches,  me encontré con un problema que no me dejó dormir [mode ironic off]. Estaba viendo una peli en el portátil y quería programarlo para que se apagara a una cierta hora, en windows ésto se puede hacer desde el panel de control, el programador de tareas y introduciendo el comando “shutdown” con los parámetros -s -t  y el tiempo deseado…Al igual que lo podemos hacer mediante una terminal  de MS-DOS introduciendo dicho comando. Aprobechando que quería programar un poco con la plataforma .NET de Visual Studio, me puse a hacer un programa que realizara dicha función, os dejo el còdigo en VB:


Public Class Form1
 Dim s As Integer = 59
 Dim ahora As String
 Private Sub apagarAhora_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles apagarAhora.Click

 Shell("shutdown /f /s")

 End Sub

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 Shell("shutdown /a")
 Timer1.Stop()

 Label2.Text = "Se ha cancelado el apagado del PC"
 End Sub

 Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click

 End Sub

 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles apagaX.Click
 Dim tiempo As String
 tiempo = TextBox1.Text
 tiempo.Trim()
 If tiempo = "" Then
 MsgBox("Eh!! No has introducido nada en la casilla de abajo")
 Else

 If IsNumeric(tiempo) Then
 tiempo = tiempo * 60
 tiempo = "shutdown -s -f -t " + tiempo
 Shell(tiempo)
 ahora = TextBox1.Text
 Timer1.Start()
 Else
 MsgBox("Ups!!Se te ha colado...El valor '" + tiempo + "' no es un numero." + vbCr + "No te pases de listo xD")
 TextBox1.Text = ""
 End If
 End If
 End Sub

 Private Sub TextBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.Click
 TextBox1.Text = ""
 End Sub

 Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

 End Sub

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

 If s = 0 Then
 s = 59
 ahora = ahora - 1
 Else
 s = s - 1
 End If
 Label2.Text = "El PC se apagará en " + ahora.ToString + " minutos y " + s.ToString + " segundos."
 End Sub

 Private Sub Label2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.Click

 End Sub

 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 TextBox1.Text = "Introduce el tiempo"

 FormBorderStyle = FormBorderStyle.Fixed3D

 End Sub
End Class

Aquí un par de LINKS por si alguien quiere el ejecutable. http://www.megaupload.com/?d=XM2VKQIV http://www.zshare.net/download/94449984bed6342b/ Sed curiosos!  😛 Un saludo. Juanan.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s