Visualizza messaggio singolo
Vecchio 27 novembre 09, 15:47   #22 (permalink)  Top
LONGFLYER
User
 
L'avatar di LONGFLYER
 
Data registr.: 06-09-2008
Messaggi: 11.388
Smile

Citazione:
Originalmente inviato da italo.driussi Visualizza messaggio
Non e' proprio cosi', perlomeno i file MDL della t14 hanno il cecksum.

Da quello che ho capito leggendo i tuoi interventi nel forum sei un programmatore, Per giocare con i files MDL e cercare di decifrarli mi sai dire come estrarre il valore, in visual basic i byte con segno (-127 +127)

Grazie
Italo
Mi spiace non lavoro con Visual Basic, cmq. ho dato un'occhiata per facilitarti i lavoro:
- dovresti usare il metodo ReadAllBytes dell'oggetto My.Computer.FileSystem.
Cerca quindi nel Help online di VB il metodo citato o eventualmente assieme all'oggetto: My.Computer.FileSystem.ReadAllBytes
Il metodo restituisce su un array, che dovrai dichiarare, l'intero file letto il cui nome risiede nei parametri di input del metodo (parti dagli esempi che troverai).

Riguardo la valorizzazione -128 + 127 dovresti usare variabili signed byte in VB conosciute come: sbyte.

La difficoltà immagino sia sapere in quale posizione del file si trovino le info. da te cercate. Specificatamente potresti utilizzare un editor o, ancora meglio, un viewer HEX con il quale esplorare il file MDL per calcolare la posizione in numero di byte dalla posizione iniziale, e successivamente inserirla nel codice VB.
Un editor HEX apre qualsiasi file che poi rappresenterà byte per byte in formato HEX.
Il formato HEX è in base esadecimale (0 .. 15, dopo il 9 i valori sono rappresentati dalle lettere A .. F).


Ciao.

PS. Ovvio, che se tu conoscessi l'intera struttura del file, basterebbe che la lettura del file la assegnassi ad una struttura dati identica già istanziata e successivamente puntare elemento per elemento .. ma credo che questo non sia il tuo caso ..
__________________
"If flying were the language of man,
soaring would be its poetry."

Ultima modifica di LONGFLYER : 27 novembre 09 alle ore 15:54
LONGFLYER non è collegato   Rispondi citando