Resultados 1 al 10 de 10

Tema: Lenguaje C a bajo nivel ... ¿?

  1. #1 Lenguaje C a bajo nivel ... ¿? 
    Avanzado
    Fecha de ingreso
    Sep 2003
    Ubicación
    Malaga (España !)
    Mensajes
    191
    Descargas
    0
    Uploads
    0
    Hola !

    Bueno, había pensando en hacer un programita en C, dónde programases a que hora quieres que sea apagado/reiniciado este para WinXP.
    Entonces, yo había pensando, que metieses cuantas horas quieres que este encendido y cuando se termine la cuenta atras que apague la pc.

    Bueno, para apagar la pc seria con el comando "shutdown -s -t 00" y para reiniciar "shutdown -r -t 00", pero... Cómo hago para ejecutar un comando o programa externo desde un programa creado en C ??
    Y otra pregunta... Me podeis dar alguna idea para hacer la cuenta atras, por segundo ??

    Muchas gracias, un saludo !
    Última edición por Dwarft; 05-01-2004 a las 15:32
    Dwarft
    Citar  
     

  2. #2  
    Avanzado
    Fecha de ingreso
    Dec 2001
    Ubicación
    127.0.0.1
    Mensajes
    1.526
    Descargas
    1
    Uploads
    0
    yo no se casi nada pero no creo q puedas encender el ordenador con un programa :S.
    Citar  
     

  3. #3  
    Avanzado
    Fecha de ingreso
    Sep 2003
    Ubicación
    Malaga (España !)
    Mensajes
    191
    Descargas
    0
    Uploads
    0
    Upss... U_U me equivoque... jjajajaja encender no.. No se porqué lo puse

    jejeje por la cara...

    Un saludo, thanks
    Dwarft
    Citar  
     

  4. #4  
    Avanzado
    Fecha de ingreso
    Nov 2002
    Ubicación
    Ciudad de México
    Mensajes
    297
    Descargas
    0
    Uploads
    0
    Lo puedes hacer con la api de windows, con la funcion ExitWindowsEx.

    Para ejecutar un programa externo desde tu programa puedes usar la funcion system, y si quieres usar las salidas y entradas del programa necesitas usar pipes.
    Citar  
     

  5. #5  
    Avanzado
    Fecha de ingreso
    Sep 2003
    Ubicación
    Malaga (España !)
    Mensajes
    191
    Descargas
    0
    Uploads
    0
    Acabo de estar buscando información sobre las cosas que me has planteados de como hacerlo... Pero aun asi sigo teniendo muchas dudas, haber si podeis ayudarme:
    1º Para utilizar la función "ExitWindowsExec" tengo que cargar la dll user32.dll o quartz.dll, pero... Me podriais poner un poco mas claro, como funciona ?? No se.. Estoy bastante confuso ahora mismo.. Se que utiliza dos parámetros... Pero nada mas
    2º Algo parecido con la función system (de este no he encontrado mucha información ). Y eso... Si podeis aclararme como utilizar todo esto...

    Las pipes se que son salidas (significa tuberia.. jeje). Y nada más.

    Un saludo
    Dwarft
    Citar  
     

  6. #6  
    Avanzado
    Fecha de ingreso
    Nov 2002
    Ubicación
    Ciudad de México
    Mensajes
    297
    Descargas
    0
    Uploads
    0
    Veo que no conoces bien la API de windows, seria bueno que le dieras una revisada. Lo mas facil es hacerlo con system, he aqui un pequeño programa para apagar la computadora:

    #include <stdlib.h>

    int main() {
    system("shutdown -s -t 00");
    return 0;
    }

    Ahi pueder ver que solo hay que pasarle a la funcion system el comando a ejecutar.
    Citar  
     

  7. #7  
    Avanzado
    Fecha de ingreso
    Sep 2003
    Ubicación
    Malaga (España !)
    Mensajes
    191
    Descargas
    0
    Uploads
    0
    Aaaa.. Que sencillo !! muchas gracias

    P.D: Ok, voy a buscar la Api. (A tu salud )
    Dwarft
    Citar  
     

  8. #8  
    Avanzado
    Fecha de ingreso
    Sep 2003
    Ubicación
    Malaga (España !)
    Mensajes
    191
    Descargas
    0
    Uploads
    0
    Ahora tengo un problemilla con la libreria time, ya que quiero programar cuando quieres que se apague o reinicie el pc y que lo haga.
    Entonces hice lo siguiente:

    Código PHP:
    #include <stdio.h>
    #include <conio.h>
    #include <stdlib.h>
    #include <time.h>

    main()

    int a;
    char l;

    while((
    != 'a') || (!= 'b') || (!= 'c'))
    {
    printf("\nApagar [a]");
    printf("\nReiniciar [b]");
    printf("\nProgramar []");
    scanf("%s",&l);

    switch(
    l)
    {
    case 
    'a': break;
    case 
    'b': break;
    case 
    'c':
    printf("\nA que hora deseas apagar: ");
    scanf("%i",&a);
    while(
    != time)
    { if(
    time == asystem("shutdown -s -t 00"); }
    } } } 
    Bueno, esto no rula.. A parte que me da un warning... jeje
    Lei que contiene la hora y/o fecha en formato condensado.. Eso que significa ?? Ya que yo probe sin dos puntos ni nada es decir (las 6, 18:00) lo puse 1800, para comprobar... Pero no hizo nada.
    Asi que hice un programita que mostrase el valor de time:
    printf("\nHora: %i",time);
    Pero.. Ni si quiera se si habria que utilizar %i u otro tipo... Y me muestra siempre el mismo valor 15552, aunque haya cambiado la hora.
    Como se utiliza la funcion "time" ??

    Por ultimo, el de apagado y reinicio, funciona... Pero se cuelga el programa en si, y cuando se cierra, es cuando rula la aplicacion (si tenia que apagar, se apaga el pc y si tenia que reiniciar reinicia).

    Un saludo, gracias.
    Última edición por Dwarft; 07-01-2004 a las 21:06
    Dwarft
    Citar  
     

  9. #9  
    Avanzado
    Fecha de ingreso
    Nov 2002
    Ubicación
    Ciudad de México
    Mensajes
    297
    Descargas
    0
    Uploads
    0
    Es que no estas usando bien la "funcion" time, asi es, time es una funcion no una variable que este cambiando con el pasar del tiempo .

    time_t tiempo;
    struct tm *tmp;

    tiempo = time(NULL);
    tmp = localtime(&tiempo);


    Ahora aqui esta la estructura tm
    struct tm {
    int tm_sec; /* segundos */
    int tm_min; /* minutos*/
    int tm_hour; /* horas */
    int tm_mday; /* dia del mes */
    int tm_mon; /* mes */
    int tm_year; /* año */
    int tm_wday; /* dia de la semana */
    int tm_yday; /* dia del año */
    int tm_isdst; /* daylight saving time */
    };

    Asi consigues la hora y fecha actual.
    Citar  
     

  10. #10  
    Avanzado
    Fecha de ingreso
    Sep 2003
    Ubicación
    Malaga (España !)
    Mensajes
    191
    Descargas
    0
    Uploads
    0
    Aaaaaaaaaaa, yo tambien encontre eso, pero no sabia que era asi :$
    Bueno, pues voy a intentar haber :P

    Asias
    Dwarft
    Citar  
     

Temas similares

  1. Respuestas: 19
    Último mensaje: 21-06-2008, 17:11
  2. Nivel de los foros en los sueños
    Por smaug_ en el foro OFF-TOPIC
    Respuestas: 1
    Último mensaje: 23-06-2006, 13:56
  3. Prueba 4: Encriptación nivel básico
    Por eXcalibur en el foro VULNERABILIDADES
    Respuestas: 27
    Último mensaje: 31-12-2002, 18:26
  4. Prueba 5: Encriptación nivel Medio
    Por eXcalibur en el foro VULNERABILIDADES
    Respuestas: 17
    Último mensaje: 21-12-2002, 08:26
  5. el nivel que las computadoras esta ahora
    Por alex en el foro HACK HiSPANO
    Respuestas: 7
    Último mensaje: 07-02-2002, 22:36

Marcadores

Marcadores

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •