Il logo BinTemplate

BinTemplate 2.3.0

© 2004-2008 Gambino Mario
www.javahouse.altervista.org



    Il BinTemplate è un software che vi permette di leggere un file binario e di creare a partire da esso un file di testo (report) contenente le stesse informazioni in modo leggibile, commentate e formattate. Per la creazione del report è necessario disporre di un Descrittore del formato di un file appropriato, al riguardo leggete la documentazione dal menù "Help->Documentazione Descrittore" e le Note sul rilascio.

    Il BinTemplate è in grado di eseguire anche l'operazione inversa, cioè può generare un file binario con i dati contenuti in un report. Ciò è possibile solo se il report è in formato XML come si vedrà più avanti.

   Il software è distribuito gratuitamente e può essere usato senza limiti di tempo. Poichè non si tratta di un prodotto commerciale non viene offerta nessuna garanzia sul suo utilizzo. Per eventuali suggerimenti o segnalazioni di errori consultate le Note sul rilascio.


Indice

  1. Installazione
  2. Esecuzione
  3. Utilizzo
    1. Scheda Report
    2. Caratteri non visualizzabili
    3. Debug
    4. Scheda binario
    5. Riga di comando
  4. Integrità dei dati
  5. Note sul rilascio

Installazione

Aprite la finestra "Esplora risorse" quindi il menu "Visualizza" => il menu "Opzioni cartella" => la scheda "Tipi di file" => il tasto "Nuovo Tipo" e compilate i seguenti campi:

CAMPO
VALORE
Descrizione del tipo Jar Eseguibile Java [o altra descrizione]
Estensione associata *.jar
Contenuto (MIME) application/x-java

cliccate sul tasto "Nuova..." della sezione "Operazioni" e nella successiva finestra compilate i campi:

CAMPO VALORE
Operazione Esegui con Java [o altra descrizione]
Applicazione utilizzata...
C:\j2re1.4.2_02\bin\javaw.exe "-jar" "%1" [sostituite il percorso C:\j2re1.4.2_02 con quello in cui avete installato il JRE]


Esecuzione

     Il BinTemplate può essere eseguito su qualsiasi sistema operativo in cui sia installato il JRE e per avviarlo potete:


Utilizzo

   Il BinTemplate può essere utilizzato mediante la sua interfaccia grafica o dalla riga di comando.

   L'interfaccia grafica del BinTemplate è composta principalmente da due schede che individuano le sue due funzionalità.

Scheda Report

   Utilizzate la scheda Report per generare un report. E' necessario selezionare tre diversi file:

"Descrittore": un opportuno file XML che descrive il formato del file. Per crearlo potete fare riferimento alla documentazione accessibile dal menù "Help->Documentazione Descrittore".

"Input": il file in formato binario o testuale che volete analizzare.

"Output": il file che conterrà il report (descritto più avanti).

Selezionate ogni file mediate il tasto "..." ad esso relativo, quindi cliccate sul tasto "Elabora" per iniziare l'elaborazione.

   Per semplificare la scelta del descrittore, è possibile copiare quelli più utilizzati nella cartella "Descrittori". Fatto ciò, essi saranno visibili nel campo combobox del "Descrittore". Potete effettuare la copia come preferite ma se utilizzate il menù "File->Registra Descrittore" il BinTemplate eseguirà un controllo sul contenuto del descrittore e vi avviserà su eventuali inesattezze.

   Il report è un file che contiene una descrizione leggibile del file elaborato. Il BinTemplate può generarlo in semplice formato testo o in formato XML secondo la scelta effettuata dal menù "Report" dal quale potete scegliete tra "Formato TXT" e "Formato XML". Ogni scrittura contenuta nel report è in relazione con un nodo <campo> del Descrittore ed individua una descrizione e il relativo valore, solo per il formato TXT potete scegliere se allineare tutti i valori in una stessa colonna, essa sarà calcolata automaticamente tenendo conto della descrizione più lunga.
Attualmente, nel report in formato XML i numeri vengono sempre inseriti nella forma esadecimale per rendere più semplice l'eventuale modifica manuale degli stessi, utile se volete generare un file binario usando la scheda Binario descritta più avanti.


Caratteri non visualizzabili

   Un campo di tipo "testo" potrebbe contenere dei caratteri non visualizzabili, a tal proposito il BinTemplate è conforme alle specifiche 3.0.0 del Descrittore dalle quali si legge che i byte con valori ascii esadecimali minori di 0x20 oppure maggiori di 0x7D devono essere inseriti nel report con la sequenza "\xx" con "xx" pari al valore ascii esadecimale. Ad esempio il byte 0x01 sarà inserito come "\01" (testo di 3 byte che rappresenta un solo byte letto dal file di input). Poichè il carattere "\" è utilizzato nella sequenza, se il testo stesso contiene uno "\" esso sarà inserito nel report come "\\" (testo di 2 byte che rappresenta il singolo byte "\").

   Oltre a quanto detto sopra, il BinTemplate gestisce anche i campi con dimensioni raggruppate previste dalle specifiche del Descrittore. Le specifiche, però, lasciano piena libertà su come separare visivamente i campi e a tal proposito il BinTemplate usa una virgola (","). La virgola, quindi, è da considerare un carattere speciale al pari di "\" e se il testo stesso contiene una "," essa sarà inserita nel report come "\," (testo di 2 byte che rappresenta il singolo byte ",").

   Oltre a quanto detto sopra, il BinTemplate può generare i report in formato TXT o XML. Il formato XML riserva un significato particolare ad alcuni caratteri che pur essendo stampabili non possono essere utilizzati. Si tratta dei caratteri "&", "<" e ">". Se il BinTemplate li incontra in un campo di tipo testo li sostituisce sempre (anche nei report TXT) con la rispettiva sequenza "\xx". La tabella seguente riassume i caratteri che vengono sostituiti all'interno dei campi di tipo testo

Carattere xx
Testo inserito
Dovuto a
xx < 0x20 o xx > 0x7D \xx Descrittore 3.0.0
\ \\ Descrittore 3.0.0
& \26 BinTemplate 2.2.0
< \3C BinTemplate 2.2.0
> \3E BinTemplate 2.2.0



Debug

   Dal menù "Report->Debug" è possibile abilitare alcune opzioni che rendono più dettagliata l'analisi del report:


Scheda Binario

   Utilizzate la scheda Binario per generare un file in formato binario. E' necessario selezionare un report in formato XML già esistente ed indicare il nome del file da generare.

Selezionate ogni file mediate il tasto "..." ad esso relativo, quindi cliccate sul tasto "Elabora" per iniziare l'elaborazione.


Riga di comando

   Per default, il BinTemplate mostra la propria interfaccia grafica indipendentemente dal fatto che venga avviato con un doppio clic o dalla riga di comando. Dalla riga di comando, tuttavia, è possibile indicare direttamente i parametri d'utilizzo permettendo al BinTemplate di eseguire il proprio lavoro senza interagire con l'utente. Questa modalità è utile per permettere ad un qualsiasi software di usare le funzionalità del BinTemplate, infatti potrà eseguirlo in uno dei seguenti modi:

java -jar BinTemplate.jar -help

java -jar BinTemplate.jar -report_txt <file da leggere> <file report> <descrittore> java -jar BinTemplate.jar -report_xml <file da leggere> <file report> <descrittore> java -jar BinTemplate.jar -binario <file report XML> <file binario>


Integrità dei dati

   L'attuale versione del BinTemplate supporta le specifiche 3.0.0 del descrittore di un file e quindi anche la verifica e il calcolo dell'integrità dei dati.

Per utilizzare questa funzionalità serve un descrittore opportunamente configurato che indichi su quali strutture effettuare il calcolo e quale campo della struttura contiene il valore di controllo da riscontrare. L'effetto si ha sia sulla generazione del report che del binario:

  1. durante la creazione di un report il BinTemplate vi avviserà se il calcolo da esso effettuato sui dati di una struttura non corrisponde al valore indicato nel campo di controllo;

  2. durante la creazione di un file binario il BinTemplate calcolerà il valore corrispondente ai dati della struttura e lo inserirà nel campo di controllo.

   L'uso congiunto delle due funzioni permette di modificare in modo semplice un file binario già esistente senza preoccuparsi di calcolare a mano i controlli previsti dal suo formato: generate un report in XML di un file binario di cui possedete il descrittore, modificate con un editor di testi il file XML ottenuto ed utilizzatelo per generare un file binario. Fate ATTENZIONE a modificare i valori rispettando il tipo (numero o testo) e il formato del campo (esadecimale, testo con eventuali sequenze "\\" e "\xx") poiché il BinTemplate non effettua controlli al riguardo.


Note sul rilascio

   Il software BinTemplate è distribuito gratuitamente e senza garanzia alcuna.
   Il descrittore di un file permette di conoscere in modo dettagliato il formato binario di un file, fate ATTENZIONE a non utilizzare descrittori relativi a formati proprietari su cui non possedete le dovute autorizzazioni.

   Java, il logo Java, JRE, Sun, sono marchi registrati dalla Sun Microsystems, Inc.
Windows 98 è un marchio registrato dalla Microsoft Corporation.