Oppure

Loading
21/02/15 12:11
totemtotem
Ciao a tutti,
come posso aprire un file .EXE o di qualsiasi altra estensione, per poterlo editare ? Devo sostituire alcuni testi compilati all'interno del file oppure eseguire operazioni di ricerca di testi.
In pratica devo caricarmelo in memoria,far le mie operazioni, e poi salvarlo nuovamente come exe.

Grazie per i vostri consigli
Marco
aaa
21/02/15 13:02
Poggi Marco
Ciao!

Hai a disposizione i file sorgenti ( il testo del programma in codice basic ) ?
aaa
21/02/15 13:04
dnha
In pratica vuoi decompilare un eseguibile compilato con VB, giusto?
aaa
21/02/15 13:24
TheDarkJuster
O vuoi editare in VB6 un exe codificato COFF? O vuoi editare in vb6 un exe .NET? Non si capisce.... come se gli exe fossero tutti uguali.....
aaa
21/02/15 13:37
totemtotem
Io vorrei aprire un qualsiasi file .exe come file binario, del quale naturalmente non ho il sorgente e non so in quale linguaggio è stato scritto, e nell'applicativo VB6 andare a cercare una stringa e modificarla. Vi faccio un es. stupido: apro calc.exe e cerco all'interno del file il testo "Calcolatrice" e lo rinomino in "Calculator ". Ovviamente non posso variare la lunghezza del testo essendo compilato. In pratica, ma non credo che si possa, è come se io caricassi byte per byte tutto il file binario in un array o una variabile di testo per poi elaborarli nel mio programma VB6.
aaa
21/02/15 13:40
totemtotem
...aggiungo ancora questo: è come se dovessi realizzare un editor HEX che apre qualsiasi tipo di file, indipendentemente dal formato, e lo visualizza sullo schermo ma con la possibilità di editare i singoli byte.
aaa
21/02/15 14:00
TheDarkJuster
Se esistono vari formati di eseguibile significa che non sono tutti uguali, e quindi non è detto che le stringhe costanti siano memorizzate allo stesso modo, non credi? Comunque puoi aprire con il notepad un .exe e andare a vedere se riesci a riconoscere le stringhe (io proverei prima con i COFF) e poi fai la stessa cosa con gli altri tipi di eseguibile. Se non trovi le stringhe ne riparliamo, ma intanto prova.
aaa
21/02/15 15:24
totemtotem
Non riesco a spiegarmi...
Nell'immagine allegata, ho aperto Cal.exe con un HexEditor che apre tranquillamente tutti gli eseguibili ma anche qualsiasi altro file, di qualsiasi formato o codifica e mi visualizza la codifica Hex e ASCII. Io devo scrivere un codice simile. Immagino che abbia caricato il file Calc.exe in binario, poi abbia convertito in Hex e ASCII i singoli byte per la visualizzazione. Come mi carico in memoria il file EXE o di altro formato per poterlo poi elaborare nel mio applicativo VB6 esattamente come ha fatto l'Hex Editor ? Il file da aprire potrebbe essere di grandi dimensioni quindi come lo carico e su quale tipo di variabile lo appoggio nel mio programma ?
aaa