Nuevas NORMAS para el foro

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación? - ſeptiembre 08, 2008, 12:13:28
Boton Buscar
Inicio Ayuda Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programación  |  Carbide C/C#/C++  |  Tema: mi hola mundo :P 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: mi hola mundo :P  (Leído 194 veces)
Ni0
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1365


Ni0-inside the source code

Ni0@el-hacker.org
Ver Perfil WWW Email
« en: Diciembre 20, 2007, 10:14:15 »

hola, boludeando con el compilador se me ocurrio hacer un hola mundo diferente, mirenlo:
Código:
#include <stdio.h>
#define HOLAM fseek

main(){
    FILE *f;
    int i = 12;
    char fichero[255];
    do{
        printf("ingrese la ruta de un ejecutable .exe: ");
        gets(fichero);
    }while((f = fopen(fichero, "rb")) == NULL);   
    HOLAM(f, i + 67, SEEK_SET);
    putchar(fgetc(f) - 32);
    HOLAM(f, i - 7, SEEK_CUR);
    putchar(fgetc(f) - 32);
    HOLAM(f, 1 - i , SEEK_CUR);
    putchar(fgetc(f));
    HOLAM(f, i, SEEK_CUR);
    putchar(fgetc(f) - 32);
    HOLAM(f, (int)i / 10 , SEEK_CUR);
    putchar(fgetc(f) - 32);
    HOLAM(f, (i - ((int)i / 10) * 10) * (-1) , SEEK_CUR);
    putchar(fgetc(f) - 32);
    HOLAM(f, i, SEEK_CUR);
    putchar(fgetc(f) - 32);
    putchar(fgetc(f) - 32);
    HOLAM(f, i - 8, SEEK_CUR);
    putchar(fgetc(f));
    putchar(fgetc(f));
    fclose(f);
    getchar();
}
funciona siempre y cuando sea un ejecutable .exe y solo sea compatible con windows

salu2!
« Última modificación: Diciembre 22, 2007, 06:33:07 por Ni0 » En línea

Inside The Source Code




Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Linux Registred User #460377
dreams_eater
Habitual
*****
Desconectado Desconectado

Mensajes: 176



Ver Perfil
« Respuesta #1 en: Diciembre 20, 2007, 10:51:00 »

esto es confuso, jejejejej
Código:
#include <stdio.h>

main(){
    FILE *f;
    char fichero[255];
    do{
        printf("ingrese la ruta de un ejecutable .exe: ");
        gets(fichero);
    }while((f = fopen(fichero, "rb")) == NULL);   
    fseek(f, 79, SEEK_SET);
    putchar(fgetc(f) - 32);
    fseek(f, 5, SEEK_CUR);
    putchar(fgetc(f) - 32);
    fseek(f, -11 , SEEK_CUR);
    putchar(fgetc(f));
    fseek(f, 12, SEEK_CUR);
    putchar(fgetc(f) - 32);
    fseek(f, 1 , SEEK_CUR);
    putchar(fgetc(f) - 32);
    fseek(f, -2 , SEEK_CUR);
    putchar(fgetc(f) - 32);
    fseek(f, 12, SEEK_CUR);
    putchar(fgetc(f) - 32);
    putchar(fgetc(f) - 32);
    fseek(f, 4, SEEK_CUR);
    putchar(fgetc(f));
    putchar(fgetc(f));
    fclose(f);
    getchar();
}
¿voy bien? sigo mañana
En línea



"La juventud envejece, la inmadurez se supera, la ignorancia puede educarse, y la borrachera desperjarse, pero la estupidez dura para siempre" - Aristófanes
Ni0
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1365


Ni0-inside the source code

Ni0@el-hacker.org
Ver Perfil WWW Email
« Respuesta #2 en: Diciembre 21, 2007, 01:45:22 »

creo que si, xD ya no recuerdo que numeros iban, compila y fijate que pasa, y si, trate de ponerlo un poquitin confuso xD

salu2!
En línea

Inside The Source Code




Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Linux Registred User #460377
dreams_eater
Habitual
*****
Desconectado Desconectado

Mensajes: 176



Ver Perfil
« Respuesta #3 en: Diciembre 21, 2007, 04:10:22 »

si dice holamundo...supngo que devo seguir
En línea



"La juventud envejece, la inmadurez se supera, la ignorancia puede educarse, y la borrachera desperjarse, pero la estupidez dura para siempre" - Aristófanes
Ni0
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1365


Ni0-inside the source code

Ni0@el-hacker.org
Ver Perfil WWW Email
« Respuesta #4 en: Diciembre 21, 2007, 04:17:48 »

si dice "holamundo" esta mal xD, el que postie dice "HOLA MUNDO"

salu2!
En línea

Inside The Source Code




Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Linux Registred User #460377
dreams_eater
Habitual
*****
Desconectado Desconectado

Mensajes: 176



Ver Perfil
« Respuesta #5 en: Diciembre 21, 2007, 08:15:37 »

no,no yo fui el navo que lo escribio así, creéme.
En línea



"La juventud envejece, la inmadurez se supera, la ignorancia puede educarse, y la borrachera desperjarse, pero la estupidez dura para siempre" - Aristófanes
dreams_eater
Habitual
*****
Desconectado Desconectado

Mensajes: 176



Ver Perfil
« Respuesta #6 en: Diciembre 21, 2007, 08:43:34 »

suponiendo que usas dev, Los exexs tuyos no son compatibles a dos.
siendo su comienso:
Citar
MZ       ÿÿ  ¸        @                                   €   º ´   Í!¸LÍ!This program cannot be run in DOS mode.

$       PE  L í½9G   ä  à  8                      @                     `     ¾˜                                  P  Р                                                                                                                 .text   
                        `  `.data    @                          @  À.rdata  P   0                     @   @.bss    °     @                      €  À.idata  Р  P                     @  À
queda claro que es
Código:
#include <stdio.h>

main(){
    FILE *f;
    char fichero[255];
    do{
        printf("ingrese la ruta de un ejecutable .exe: ");
        gets(fichero);
    }while((f = fopen(fichero, "rb")) == NULL);   
    fseek(f, 79, SEEK_SET);
    putchar('h' - 32);
    fseek(f, 5, SEEK_CUR);
    putchar('o' - 32);
    fseek(f, -11 , SEEK_CUR);
    putchar('L');
    fseek(f, 12, SEEK_CUR);
    putchar('a' - 32);
    fseek(f, 1 , SEEK_CUR);
    putchar(' ' - 32);
    fseek(f, -2 , SEEK_CUR);
    putchar('m' - 32);
    fseek(f, 12, SEEK_CUR);
    putchar('u' - 32);
    putchar('n' - 32);
    fseek(f, 4, SEEK_CUR);
    putchar('D');
    putchar('O');
    fclose(f);
    getchar();
}
las minusculas menos 32, consultando en la tabla ascii, es su mayuscula!!
espace -32 es null.
buaa, supongo que pone espacio si es menor a 32
quedando al descubierto el porque pone eso.

no cualquier exe es correcto, he programado exes para DOS, si queres te paso alguno  Cheesy
En línea



"La juventud envejece, la inmadurez se supera, la ignorancia puede educarse, y la borrachera desperjarse, pero la estupidez dura para siempre" - Aristófanes
Ni0
Gran Colaborador
*****
Desconectado Desconectado

Mensajes: 1365


Ni0-inside the source code

Ni0@el-hacker.org
Ver Perfil WWW Email
« Respuesta #7 en: Diciembre 22, 2007, 02:06:50 »

si, ya se, tengo el turbo C y compila .exe y no tiene ese formato...

y no se porque le puse que le reste 32 al espacio..., no recuerdo xD
pero el code me funcionaba

salu2!
En línea

Inside The Source Code




Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Linux Registred User #460377
Páginas: [1] Ir Arriba Imprimir 
Comunidad Underground Hispana  |  Programacion  |  Programación  |  Carbide C/C#/C++  |  Tema: mi hola mundo :P « anterior próximo »
Ir a:  


Ranking-Hits
Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC