Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Elemental Code en 1 Diciembre 2010, 16:24 pm



Título: Administrar el Tiempo
Publicado por: Elemental Code en 1 Diciembre 2010, 16:24 pm
Hola :D
Anoche, tuve que dejar la pc prendida porque algo estaba andando y me di cuenta que no tengo manera facil de que se autoapague.

Entonces dije, zas armo un soft para que uno ingrese el tiempo y despues kaput.

Pero los timer de VB6.0 van en milisegundos.

Osea si yo necesito una hora serian cerca de 3600 * 1000 = 3600000 Milisegundos.

Existe una mejor opcion?, Esto consume muchos recursos y pone en riesgo el sistema?

Muchas gracias.


Título: Re: Administrar el Tiempo
Publicado por: ssccaann43 © en 1 Diciembre 2010, 17:17 pm
Asigna por hora..! Sicronizado a la hora de tu equipo..!


Título: Re: Administrar el Tiempo
Publicado por: 79137913 en 1 Diciembre 2010, 18:00 pm
HOLA!!!

Usa el DOS, el comando "shutdown"

Si no queres leer tanto usa "shutdown -i" en la ventana ejecutar y te carga la GUI

Uso: shutdown [-l | -s | -r | -a] [-f] [-m \\equipo] [-t xx] [-c "comentario"] [
-d up:xx:yy]

        Sin argumentos  Mostrar este mensaje (igual a -?)
      -i                Mostrar interfaz GUI, debe ser la primera opción
        -l                      Cerrar sesión (no se puede usar con la opción -m
)
        -s                      Apagar el equipo
        -r                      Apagar y reiniciar el equipo
        -a                      Anular el apagado de equipo
        -m \\equipo             Equipo que se apagará/reiniciará/anulara
        -t xx                   Establecer el tiempo de espera de apagado en xx
                               segundos
        -c "comentario"         Comentario de apagado (máximo, 127 caracteres)
        -f                      Fuerza el cierre de aplicaciones sin advertir
        -d [p]:xx:yy         Código de motivo de apagado
                                u es el código de usuario
                                p es el código de apagado planeado
                                xx es el código primario del motivo de apagado
                              (entero positivo menor que 256)
                                yy es el código secundario del motivo de apagado

                              (entero positivo menor que 65536)


Ejemplo shutdown -s -t 3600
Con eso se va  a apagar en 1 hora.
Para cancelar usa shutdown -a

GRACIAS POR LEER!!!


Título: Re: Administrar el Tiempo
Publicado por: Elemental Code en 1 Diciembre 2010, 18:04 pm
la parte del shutdown la tengo clara, y no es DOS es un ejecutable.
Lo puedo llamar como yo quiera :P

Hay otra opcion ademas de coordinar con el reloj de windows?


Título: Re: Administrar el Tiempo
Publicado por: raul338 en 1 Diciembre 2010, 18:36 pm
Usa timer que tengan un minuto de intervalo, usas un contador y si llega a 60 ... apagas :P


Título: Re: Administrar el Tiempo
Publicado por: Elemental Code en 1 Diciembre 2010, 18:40 pm
Usa timer que tengan un minuto de intervalo, usas un contador y si llega a 60 ... apagas :P

No es mala tu idea.
Pero pregunto, ejecutar tantas veces un timer y con un intervalo grande, ¿Relentiza el sistema? ¿ vuelve inestable el soft?


Título: Re: Administrar el Tiempo
Publicado por: BlackZeroX en 1 Diciembre 2010, 19:06 pm
.
No relentiza nada.

Código
  1.  
  2. '
  3. '   /////////////////////////////////////////////////////////////
  4. '   // Autor:   BlackZeroX ( Ortega Avila Miguel Angel )       //
  5. '   //                                                         //
  6. '   // Web:     http://InfrAngeluX.Sytes.Net/                  //
  7. '   //                                                         //
  8. '   //    |-> Pueden Distribuir Este codigo siempre y cuando   //
  9. '   // no se eliminen los creditos originales de este codigo   //
  10. '   // No importando que sea modificado/editado o engrandecido //
  11. '   // o achicado, si es en base a este codigo                 //
  12. '   /////////////////////////////////////////////////////////////
  13. '   // http://infrangelux.sytes.net/Blog/index.php?option=com_content&view=article&id=6:artwait&catid=2:catprocmanager&Itemid=8
  14. '   /////////////////////////////////////////////////////////////
  15.  
  16. Option Explicit
  17.  
  18. Private Declare Function WaitMessage Lib "user32" () As Long
  19.  
  20. Enum eTime
  21.    Horas = 3600
  22.    Minutos = 60
  23.    Segundos = 1
  24. End Enum
  25.  
  26. Public Sub Wait(ByVal vToWait&, Optional ByVal ThisWait As eTime = Segundos, Optional ByVal UseAllProc As Boolean = False)
  27. Dim vDateE      As Date
  28.    vDateE = DateAdd("s", vToWait& * (0& + ThisWait), Time)
  29.    Do While vDateE > Time
  30.        Call WaitMessage
  31.        If Not UseAllProc Then DoEvents
  32.    Loop
  33. End Sub
  34.  
  35.  

Dulces Lunas!¡.


Título: Re: Administrar el Tiempo
Publicado por: agus0 en 1 Diciembre 2010, 19:06 pm
No es mala tu idea.
Pero pregunto, ejecutar tantas veces un timer y con un intervalo grande, ¿Relentiza el sistema? ¿ vuelve inestable el soft?


No Inestable para mi no... yo tuve hace un tiempo la misma idea que vos y hice que se apague en Xhoras o alas HH:MM entonces comparo cada 1 minuto si la hora del sistema es igual a la hora asignada para el apagado, ahora bien si quiero apagarlo en Xhoras (supongamos 4horas) digo: "Si ahora son las 15:00, hay que apagarlo cuando sean las 19:00" y a partir de ahí hago lo mismo que antes, me fijo cada minuto si son las 19


Título: Re: Administrar el Tiempo
Publicado por: ssccaann43 © en 1 Diciembre 2010, 19:44 pm
Yo coloco en un timer que vaya moviendose junto a la hora del sistema..! Y cuando llegue a una hora que yo le indique, sea eso una caja de text o lo que sea, pues mando  a apagar el so


Título: Re: Administrar el Tiempo
Publicado por: Stelio Kontos en 1 Diciembre 2010, 19:57 pm
¿AT xx:xx shutdown?
Si no te parece viable la opción del timer (que de todas formas lo es) puedes currarte algo que actúe de timer, por poner un ejemplo éste modulo actúa de timer sin tener que cargar el control y funciona con segundos.
Código
  1. Sub Pause(interval)
  2. Current = Timer
  3. Do While Timer - Current < Val(interval)
  4. DoEvents
  5. Loop
  6. End Sub


Título: Re: Administrar el Tiempo
Publicado por: BlackZeroX en 1 Diciembre 2010, 20:04 pm
@Stelio Kontos

El unico problema que es que ese codigo se come el procesador... por ende relentiza.

Dulces Lunas¡.


Título: Re: Administrar el Tiempo
Publicado por: ssccaann43 © en 1 Diciembre 2010, 20:24 pm
lool..! Terminara usando el timer...! Es algo tan sencillo...!

dime si es esto lo que quieres: http://www.megaupload.com/?d=5R3QR8WS


Título: Re: Administrar el Tiempo
Publicado por: raul338 en 1 Diciembre 2010, 20:35 pm
@Stelio Kontos, @BlackZeroX: Bajando de prioridad el proceso puede pasar desapercibido

Elemental code, yo hize exactamente lo mismo en .net, pero apagar a "determinada hora", compruebo cada 1 minuto y medio (no me importa la precision de  la hora del apagado :xD). Hubiera presentado eso en lugar del Notas por red :xD :xD  :laugh:


Título: Re: Administrar el Tiempo
Publicado por: Elemental Code en 1 Diciembre 2010, 22:13 pm
Gracias a todos.

Les presento a Valium 1.0
http://foro.elhacker.net/programacion_visual_basic/valium_10_manda_a_tu_pc_a_dormir-t312417.0.html