Private Sub Matricula_EC40_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Matricula_EC40.KeyDown Dim Consulta_Matricula As String Dim lista As Byte Dim Consulta_pcs_lc As String = "UPDATE pcs_lc SET id_estado_pc=2 WHERE id_pc_lc=01" Dim Actualiza_pcs_lc As New MySqlCommand(Consulta_pcs_lc, Conexion) Select Case e.KeyData Case Keys.Enter Try If Matricula_EC40.Text <> "" Then Consulta_Matricula = "SELECT * FROM alumnos WHERE matricula='" & Matricula_EC40.Text & "'" Adaptador = New MySqlDataAdapter(Consulta_Matricula, Conexion) Datos = New DataSet Adaptador.Fill(Datos, "alumnos") lista = Datos.Tables("alumnos").Rows.Count End If If lista <> 0 Then Matricula_EC40.Text = Datos.Tables("alumnos").Rows(0).Item("matricula") 'MsgBox("Matricula encontradoa: " + txtMatricula.Text) Registra = New MySqlCommand("INSERT INTO registros_lc(matricula,hora_entrada,hora_salida,id_pc_lc)" & Chr(13) & "VALUES(@matricula,@hora_entrada,@hora_salida,@id_pc_lc)", Conexion) Registra.Parameters.AddWithValue("@matricula", Matricula_EC40.Text) Registra.Parameters.AddWithValue("@hora_entrada", Date.Now) Registra.Parameters.AddWithValue("@hora_salida", Date.Now) Registra.Parameters.AddWithValue("@id_pc_lc", "01") Nombre.Text = Datos.Tables("alumnos").Rows(0).Item("nombres") Registra.ExecuteNonQuery() Actualiza_pcs_lc.ExecuteNonQuery() MsgBox("Matricula Registrada " + Nombre.Text, MsgBoxStyle.Information, "Aviso") Else MsgBox("Matricula no encontrada") End If Catch ex As Exception MsgBox(ex.Message) End Try Matricula_EC40.Text = "" End Select End Sub Private Sub Menu_Encender_EC40_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Encender_EC40.Click Dim Comando_Encender_EC40 As String Dim Respuesta As String Dim IP_EC40 As String IP_EC40 = "192.168.11.1" Comando_Encender_EC40 = "wolcmd b0:22:7a:2d:89:34 192.168.10.40 255.255.255.0 1" Respuesta = MsgBox("Deseas Encender el Equipo?", vbYesNo, "Si") If Respuesta = vbYes Then Shell("cmd.exe /C" & Comando_Encender_EC40) Verificar_Encendido_EC40(IP_EC40) Else Return End If Verificar_Estado_de_Red_EC40(IP_EC40) End Sub Sub Verificar_Encendido_EC40(ByVal IP_EC40 As String) Dim Ping As Boolean 'declaramos la variable Ping Dim Tiempo_Verificar_Encendido_EC40 As Integer = 500 ' verifica que hay conexión a internet If My.Computer.Network.IsAvailable = False Then MsgBox("No hay conexión a la red", MsgBoxStyle.Critical) Exit Sub End If On Error Resume Next 'guardamos en la variable la direccion del ping Ping = (My.Computer.Network.Ping(IP_EC40)) 'damos 3 segundos de espera 'Thread.Sleep(3000) System.Threading.Thread.Sleep(Tiempo_Verificar_Encendido_EC40) 'Acá mandamos los mensajes para las 2 posibilidades If Ping = False Then 'si no se pudo acceder ,avisamos 'MsgBox("La IP no está disponible", MsgBoxStyle.Critical, "Error") PBEC40.Image = PBECApagada.Image() Else 'MsgBox("La IP está disponible !!", MsgBoxStyle.Information, "Aviso") PBEC40.Image = PBECBloqueada.Image() End If PBEC40.Image = PBECEncendiendo.Image() End Sub Sub Verificar_Estado_de_Red_EC40(ByVal IP As String) Dim Ping As Boolean 'declaramos la variable Ping Dim Tiempo_Verificar_Estado_de_Red_EC40 As Integer = 500 ' verifica que hay conexión a internet If My.Computer.Network.IsAvailable = False Then MsgBox("No hay conexión a la red", MsgBoxStyle.Critical) Exit Sub End If On Error Resume Next 'guardamos en la variable la direccion del ping Ping = (My.Computer.Network.Ping(IP)) 'damos 60 segundos de espera 'Thread.Sleep(3000) System.Threading.Thread.Sleep(Tiempo_Verificar_Estado_de_Red_EC40) 'Acá mandamos los mensajes para las 2 posibilidades If Ping = False Then 'si no se pudo acceder ,avisamos 'MsgBox("La IP no está disponible", MsgBoxStyle.Critical, "Error") PBEC40.Image = PBECApagada.Image() Else 'MsgBox("La IP está disponible !!", MsgBoxStyle.Information, "Aviso") PBEC40.Image = PBECBloqueada.Image() End If PBEC40.Image = PBECBloqueada.Image() End Sub Private Sub Menu_Apagar_EC40_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Apagar_EC40.Click Dim Comando_Apagar As String Dim Respuesta As String Comando_Apagar = "shutdown -m \\LC40 -s" Respuesta = MsgBox("Deseas Apagar el Equipo?", vbYesNo, "Si") If Respuesta = vbYes Then Shell("cmd.exe /C" & Comando_Apagar) PBEC40.Image = PBECApagando1.Image If My.Computer.Network.Ping("192.168.10.40", 500) Then MsgBox("Responde al Ping.") Else MsgBox("No Responde al Ping.") PBEC40.Image = PBECApagada.Image() End If Else Return PBEC40.Image = PBECApagando2.Image() End If Thread.Sleep(3000) PBEC40.Image = PBECApagada.Image End Sub Private Sub Menu_Bloquear_EC40_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Bloquear_EC40.Click Dim Comando_Suspender As String Dim Respuesta As String Comando_Suspender = "psexec -accepteula -i 1 -s \\LC40 C:\Bloqueo.bat" Respuesta = MsgBox("Deseas Bloquear el Equipo?", vbYesNo, "Si") If Respuesta = vbYes Then Shell("cmd.exe /c psexec -accepteula -i 1 -s \\LC40 C:\Bloqueo.bat ") Thread.Sleep(3000) PBEC40.Image = PBECBloqueada.Image Else Return End If Thread.Sleep(3000) End Sub Private Sub Menu_Reiniciar_EC40_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Reiniciar_EC40.Click Dim Comando_Reiniciar As String Dim Respuesta As String Dim IP_EC40 As String IP_EC40 = "192.168.10.40" Comando_Reiniciar = "shutdown -m \\LC40 -r" Respuesta = MsgBox("Deseas Reiniciar el Equipo?", vbYesNo, "Si") If Respuesta = vbYes Then Shell("cmd.exe /C " & Comando_Reiniciar) Thread.Sleep(3000) PBEC40.Image = PBECReiniciando.Image() Else Return End If Thread.Sleep(3000) Verificar_Estado_de_Red_EC40(IP_EC40) End Sub Private Sub Menu_Instalar_EC40_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Instalar_EC40.Click Dim Comando_Copiar As String Dim Comando_Instalar As String Dim Respuesta_Copia As String Dim Respuesta_Instalar As String Comando_Copiar = "xcopy \\148.227.227.42\Instaladores \\LC40\Instaladores\ /s /e /c /k /y /d" ' Esta linea de comando funciona en Windows 8.1 y no en Windows 10 'Comando_Instalar = "C:\Windows\System32\PsExec.exe \\LC40 C:\Instaladores\Instalar.bat" Comando_Instalar = "PsExec.exe \\LC40 C:\Instaladores\Instalar.bat" Respuesta_Copia = MsgBox("Deseas Realizar la Copia de los Archivos?", vbYesNo, "Si") If Respuesta_Copia = vbYes Then Shell("cmd.exe /C " & Comando_Copiar) Respuesta_Instalar = MsgBox("Deseas Realizar la Instalacion?", vbYesNo, "Si") If Respuesta_Instalar = vbYes Then Shell("cmd.exe /C " & Comando_Instalar) Else Return End If Else Return End If End Sub