Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - dooque

#31
Muy bien! Muchas gracias!

Si, ya tengo varias soluciones alternativas a mi problema vastante viables y no tan oscuras, solo queria asegurarme que no habia otra forma de hacerlo mejor!

Salduos!
#32
Programación C/C++ / Borrar ejecutable en proceso!
16 Diciembre 2010, 18:16 PM
Wenas!

Mi pregunta de hoy es si alguien sabe (si es que se puede) como borrar un archivo ejecutable desde el mismo proceso generado por ese ejecutable.
Por ejemplo tengo mi programa test.exe y quiesiera que cuando lo ejecute él borrara su propio archivo ejecutable.

Pregunto esto porque de la manera usual no se puede, el sistema no te deja y a lo mejor alguien sabe/conoce/existe alguna API que me permita hacer eso!

Saludos!

Gonzalo.
#33
hola!

Eso lo podes decidir vos! El usuario podria primero especificar cuantos numeros va a entrar y luego ingresa esa cantidad de numeros! O podrias ir ingresando cadenas y cuando se ingrese la cadena vacia terminar de leer los numeros, o alguna otra forma!

Saludos
#34
Hola! como dice do-while vas a tener que usar memoria "dinamca", i.e. usar las funciones malloc() y calloc() y la mas importante free().

Aca te dejo las paginas del manual de las tres:
http://www.manpagez.com/man/3/malloc/

Basicamente "void * malloc(size_t size)" te davuelve un arreglo (buffer) de la cantidad de memoria que vos le pidas, "void * calloc(size_t count, size_t size)" es casi lo mismo con la diferencia que te devuelve un arreglo o buffer con la cantidad de elementos del tamaño que vos le digas, y ademas te devuelve la memoria inicializada a cero, cosa que malloc no hace, por ejemplo:


int *buffer = NULL;
buffer = (int *)malloc(100*sizeof(int));


te devuelve un arreglo con 100 enteros y la memoria sin inicializar.


int *buffer = NULL;
buffer = (int *)calloc(100, sizeof(int));


esto tambien te devuelve un arreglo de 100 enteros pero inicializados a cero.


Y la parte mas importante del uso de memoria dinamica es el free(), lo que hace es liberar la memoria que asignaste con malloc() o calloc(), por que si no, vas a tener una fuga de memoria o como es mas conocido "un memory leak" (http://es.wikipedia.org/wiki/Fuga_de_memoria), por ejemplo:


char *buffer = malloc(100*sizeof(char)); /* Esto es qeuivalente a char arreglo[100]; */
....
.... uso del buffer
....
free(buffer);


COROLARIO: No hay que olvidarse de liberar con free() cada puntero asgnado con malloc() o calloc(), i.e. deberias tener en tu codo la misma cantidad de llamas: #free() = #malloc() + #calloc(). Si bien esto no simpre anda es un buen ejersicio para acostumbrace a liberar la memoria.

Saludos!
#35
Cita de: Afsoon en  1 Noviembre 2010, 15:30 PM
Cita de: dooque en 29 Octubre 2010, 01:31 AM
Wenas wenas! que piola que esta... yo tambien estoy escribiendo mi propio sistema operativo, es bastante divertido y es un area linda para todo aquel que que le gusta saber como funcionan las cosas, no es dificil pero si hay que tener mucha paciencia y muchas noches jajaja!

por si alguien le interesa aca hay una pagina divertida como para empezar...

http://wiki.osdev.org

saludos

Eso si habra que tener conocimientos especialmente de C, y una cosa usas un kernel propio o otro?

Si, es propio. Esa es la idea, hacerlo dece cero, desde el bootloader pasando por el kernel hasta las aplicaciones en nivel de usuario, que creo es lo que hizo el amigo taul en sus sistema!
Yo estoy desarrollando el kernel en este momento, el sistema de archivos para ser mas especifico, ya tengo algunos "drivers" de algunos disposistivos (si es que se los puede llamar asi a este nivel de desarrollo, yo creo que no jajaja), tengo andando el sistema de interrupciones, multitarea (por hardware) y algunas cosillas mas un poco aislada todavia, pero de a poco va creciendo jajaja!

Asi que invito al q se anime a incursionar en este tema, como ya dije es muy divertido ver andar un sistema de estos en una pc real y como consecuencia del desarrollo uno termina aprendiendo muchas cosas!

Saludos!
#36
Wenas wenas! que piola que esta... yo tambien estoy escribiendo mi propio sistema operativo, es bastante divertido y es un area linda para todo aquel que que le gusta saber como funcionan las cosas, no es dificil pero si hay que tener mucha paciencia y muchas noches jajaja!

por si alguien le interesa aca hay una pagina divertida como para empezar...

http://wiki.osdev.org

saludos
#37
Programación C/C++ / Re: duda getpid =/
25 Octubre 2010, 15:39 PM
* Primero: No entendi casi nada de lo que dijiste, debes explicar un poco mejor las cosas si quieres que te ayuden!
* Segundo: Nadie puede decirte como usar un pid, es un numero, haces con el lo que quieras, si tenias pensado hacer algo y no sabes como hacerlo deberias haberlo dicho!
Por ultimo podrias poner la porcion de codigo asi entendemos un poco mas lo que estas intentando hacer!!

;) Saudos!
#38
Programación C/C++ / Re: Llamar función de exe.
16 Octubre 2010, 15:17 PM
Wenas! No estoy seguro de si funcionara pero podrias probar con las funciones OpenProcess() Y GetProcAddress() busca mas info e el msdn de windows), esta ultima creo que funciona si la rutina fue declarada como global si no, no estoy seguro!!

Igual si tienes ya un programa que hace algo que nececitas y podes pasarle la entrada  recoger la salida no le veo nada de malo, muchas aicaciones en linux hacen eso!

saludos!
#39
Cual es la duda? como leer datos de un archivo? como contruiir una tabla? o ambas?

saludos!
#40
Dudas Generales / Re: Duda con internet.
20 Julio 2010, 03:30 AM
wepa! para hacerla corta y rapido lo que hay entre "http://" y la siguiente brra "/" es el Nombre de Domino del servidor, el cual en algun Servidor de Nombres está asociado a una direccion ip (o a un conjunto de recursos mas especificamente), generalmente si el servidor es un servidor web suele comenzar con "www" pero esto no es obligatorio! Para entender mas busca info sobre el Servcio de Nombres de Dominios o DNS por sus siglas en ingles.

Espero ayudar un poquito mas!

saludos!