05/04/08 16:21
danrevella
Buona giornata a tutti!!
Una doverosa premessa: ho qualche minima nozione di programmazione, ma risale a quasi 30 (purtroppo è vero... :-(() anni fa..... quindi perdonatemi...
Che cosa dovrebbe fare il mio programma?
>myprog /?
Sintassi myprog nome_file indirizzo_iniziale indirizzo_finale chiave
Ovvero il programma prende un file .bin oppure exe e a partire dall'indirizzo_iniziale all' indirizzo finale (valori espressi in esadecimale della posizione assoluta del file) effetua uno xor utilizzando il valore "chiave" (sempre in esadecimale) che è stato fornito dalla linea di comando.
si supponga un file binario lungo 13 bytes così strutturato:
prova.bin
0000: 3e f2 00 00 00 00 00 00 00 10 00 00 00
dopo l'esecuzione diventa:
>myprog prova.bin 000a 000c 3e
prova.bin
0000: 3e f2 00 00 00 00 00 00 00 10 3e 3e 3e
Il programma vorrei farlo in C (non C++) nel modo piu' semplice e banale possibile, mi è sufficiente che giri sotto xp da linea di comando, e se il farlo in dos significa che posso utilizzare ad es. il Turbo C 2.01 della Borland con il buon vecchio Turbo debugger, evitando dei template piuttosto complicati, forse sarebbe l'ideale.
Se invece avete altri software (freeware per favore....) da consigliarmi, vi ringrzio, tenete però presente che per me sarebbe fondamentale comunque poter usufruire di uno strumento di debugging come Turbo debugger che linea dopo linea mi faccia vedere e capire come procedere.
Ho cercato di documentarmi un po': ho capito che per leggere un file in modo binario si devono utilizzare fread, fwrite, e nel mio caso forse è utile fseek; inoltre ho provato (senza successo) a capire come funziona il passaggio dei parametri da linea di comando.....
Per favore, se avete qualche piccolo template per aiutarmi, io poi farò tutte le prove e sperimentazioni possibili, vorrei usare questo programma come stimolo e come trampolino di lancio per tornare a fare un po' di programmazione, ma da solo non ce la faccio proprio...
Grazie a chiunque vorrà darmi una mano.
Danrevella
Una doverosa premessa: ho qualche minima nozione di programmazione, ma risale a quasi 30 (purtroppo è vero... :-(() anni fa..... quindi perdonatemi...
Che cosa dovrebbe fare il mio programma?
>myprog /?
Sintassi myprog nome_file indirizzo_iniziale indirizzo_finale chiave
Ovvero il programma prende un file .bin oppure exe e a partire dall'indirizzo_iniziale all' indirizzo finale (valori espressi in esadecimale della posizione assoluta del file) effetua uno xor utilizzando il valore "chiave" (sempre in esadecimale) che è stato fornito dalla linea di comando.
si supponga un file binario lungo 13 bytes così strutturato:
prova.bin
0000: 3e f2 00 00 00 00 00 00 00 10 00 00 00
dopo l'esecuzione diventa:
>myprog prova.bin 000a 000c 3e
prova.bin
0000: 3e f2 00 00 00 00 00 00 00 10 3e 3e 3e
Il programma vorrei farlo in C (non C++) nel modo piu' semplice e banale possibile, mi è sufficiente che giri sotto xp da linea di comando, e se il farlo in dos significa che posso utilizzare ad es. il Turbo C 2.01 della Borland con il buon vecchio Turbo debugger, evitando dei template piuttosto complicati, forse sarebbe l'ideale.
Se invece avete altri software (freeware per favore....) da consigliarmi, vi ringrzio, tenete però presente che per me sarebbe fondamentale comunque poter usufruire di uno strumento di debugging come Turbo debugger che linea dopo linea mi faccia vedere e capire come procedere.
Ho cercato di documentarmi un po': ho capito che per leggere un file in modo binario si devono utilizzare fread, fwrite, e nel mio caso forse è utile fseek; inoltre ho provato (senza successo) a capire come funziona il passaggio dei parametri da linea di comando.....
Per favore, se avete qualche piccolo template per aiutarmi, io poi farò tutte le prove e sperimentazioni possibili, vorrei usare questo programma come stimolo e come trampolino di lancio per tornare a fare un po' di programmazione, ma da solo non ce la faccio proprio...
Grazie a chiunque vorrà darmi una mano.
Danrevella
aaa