como puedo crear un archivo executable...Lo que tú quieres es copiar ficheros :P
que estoy haciendo malTu problema radica en los buffers (o almacenamientos intermedios, pero es muy largo :lol: ). Tú usas char g[10000] como buffer, que te almacena como máximo 10000 carácteres, o lo que es lo mismo, bytes. Por tanto (si quieres compruébalo ;)) el tamaño máximo de fichero que podrás manejar será de ese mismo tamaño, esto es, 10.000 bytes o ~9.75 KB.
ues a mi lo que se me ocurre es partir len en partes de un byte "por ejemplo"... y hacer que fread vaya leyendo byte por byte... y por cada byte leido, mandarlo a fwrite y borrar la informacion del buffer para volver a leer otro byte y mandarlo a fwrite y asi continuamente hasta finalizar con el archivo, y asi de esa manera podria crear un buffer pequeño que vaya leyendo y escribiendo la informacion...Sí, buena idea, pero dos cosillas:
mira este codigo que hice, me copia bien archivos menores de 1mb:P ahí estás implementando una mezcla entre la primera y la segunda solución de las que te hablaba :bad:
tendria que ir copiando de 512 kb a 1mb no?No exactamente, sino más bien copiar cachos de 512 bytes (por ejemplo) hasta completar el tamaño del fichero. Aunque yo usaría 2048 bytes (o 2 KB).
pero como podria decirle a fread que me lea 1000000 caracteres...Eso no es solución. La próxima vas a querer más caracteres, y más y más...
me imagino que tendre que utilizar zeromemory o memset para borrar el bufferNo hace falta borrar el buffer, lo vas a sobreescribir ;)
se me ha ocurrido algo con while y con ifPonlo para que lo veamos juntitos :D
alguna idea?Hombre, yo ya sé hacerlo, incluso el concatenador de ficheros, pero la cuestión es que seas TÚ el que lo haga :P