Listo mire tengo este código simple:
#include<stdio.h>
int main(){
FILE *file;
unsigned char buffer;
//file = fopen("Prueba.txt","r+");
file
= fopen("HolaMundo.exe","r+"); if(file!=NULL){
//printf("Archivo Abierto con exito.");
//fread(&buffer,1,1,file);
//printf("%c",buffer);
int linea = 1;
while (fread(&buffer
, 1, 1, file
) == 1) // expecting 1 // element of size
// BUFFER_SIZE
{
// process buffer
// print format
if(linea>=1 && linea<=8)
if(linea==8)
if(linea>=9 && linea<=15)
if(linea==16){
linea=0;
}
linea++;
}
{
// hit end of file
}
else
{
// some other error interrupted read
}
}else{
printf("Apertura del Fichero no fue exitosa."); }
return 0;
}
Bueno el código expuesto puede leer archivos de texto plano y los va a leer perfectamente. ya lo probé.
A la hora de leer un archivo *.exe tengo el pequeño que lo lee mal.
Como pueden ver es absurda la salida, si pueden leer en la salida se puede leer algo como:
This program can be run in dos modeEste programa puede ser corrido en dos modoPero cuando lo abro con notepad++ y lo guardo como txt si realizo lo que necesito, el problema es que no necesito abrirlo con notepad++ sino necesito hacer un programa que lo haga...
NOTA: que se parece absurdo transformar un exe a texto. pero es que realmente lo necesito.