ho letto su un libro in biblioteca che i programmi in windows (file .exe) hanno come codice iniziale MZ, e che i file .exe che contengono una doppia dicitura MZ potrebbero essere infettati da codice dannoso.
Volevo fare un programma in C che leggesse i caratteri di un file.exe.
Ho scritto un codice banalissimo come questo:
- Codice: Seleziona tutto
#include <stdio.h>
int main(){
char string[400];
FILE *programma;
programma = fopen ("programma.exe", "r");
fgets(string,400,programma);
//fputs(string,programma);
printf("%s",string);
fclose(programma);
system("pause");
return 0;
}
ciò che ottengo, con tutti i programmi che apro è questo:
- Codice: Seleziona tutto
MZÉ
come mai non visualizza mai più di tre caratteri?

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)



