Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Editor esadecimale
Forum - Visual Basic 6 - Editor esadecimale

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Due (Normal User)
Pro


Messaggi: 68
Iscritto: 19/10/2007

Segnala al moderatore
Postato alle 21:51
Giovedì, 10/01/2008
Avete presente quando si fa il dump esadecimale di un file? Ecco, io vorrei fare la cosa contraria, ossia fare un editor esadecimale che mi permetta di creare tipi di file che non posso creare semplicemente mettendo una serie di caratteri ascii in fila e salvandolo con la rispettiva estensione (es. se voglio creare un midi o un immagine, non posso usare i caratteri ascii).
è vero, probabilmente non è affatto semplice come cosa, e non so dove mettere le mani...qualcuno a delle idee?

PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 14:44
Venerdì, 11/01/2008
si che sono ascii. solo che non sono default in tastiera.
basta usare le combinazioni dell'alt + codice orrispondente.

PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 17:42
Venerdì, 11/01/2008
cioè ke tu intendi dire ke ad esempio hai 2 textbox(text1 & text2), nella text1 inserisci il codice esadecimale e tu vorresti ke nella text2 venga visualizzato il codice in ascii??

Ultima modifica effettuata da GrG il 11/01/2008 alle 18:25
PM Quote
Avatar
Due (Normal User)
Pro


Messaggi: 68
Iscritto: 19/10/2007

Segnala al moderatore
Postato alle 21:11
Venerdì, 11/01/2008
Dunque, mi spiego meglio.
Se provate ad aprire un file non testuale tipo un file musicale con ad esempio il blocco note, vi appariranno una serie di caratteri apparentemente senza senso.
Per farvi un esempio di quello che intendevo dire: nel file aperto in questo modo, potreste trovare lunghe file di spazi " ", che voi vedete come spazi ma che la maggior parte delle volte non lo sono. Infatti il blocco note visualizza uno speciale carattere (in esadecimale "00") come uno spazio (che in esadecimale è invece "20").
Questo esempio potrebbe essere riportato con molti altri caratteri, il punto è che non posso creare un file che necessita di questi caratteri all'interno semplicemente con un OPEN e un PRINT, perché non saprei come inserirci i codici dei file visto che al massimo ne conosco il codice hex.
Per questo mi serviva di poter fare un editor esadecimale, ma se c'è un modo più semplice...:D

PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 22:05
Venerdì, 11/01/2008
Forse ho capito cosa intendi...Io l'ho fatto un editor esadecimale....

Tu vuoi trasformare da ASCII a ESADECIMALE, giusto?
Cmq esistono svariati programmi ke fanno questo...

io ho utilizzato x sostituire gli spazi e tutti quei simboli la funzione replace()..:D

Ultima modifica effettuata da GrG il 11/01/2008 alle 22:06
PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 22:13
Venerdì, 11/01/2008
hai provato col chr()?
chr(0) ti restituisce quel falso spazio (che e` il carattere nullo) che dicevi.

PM Quote
Avatar
Due (Normal User)
Pro


Messaggi: 68
Iscritto: 19/10/2007

Segnala al moderatore
Postato alle 22:25
Venerdì, 11/01/2008
Be', sì, il chr() sarebbe un buon compromesso...se solo sapessi che codice metterci tra le parentesi :D cioè, non credo che il codice esadecimale corrisponda a quello da mettere nel chr()

PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 22:26
Venerdì, 11/01/2008
Io la penso come Due e se nn mi sbajo come diceva anke lui uno spazio è equivalente a due 00...e non a uno 0...

Ultima modifica effettuata da GrG il 11/01/2008 alle 22:28
PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 14:38
Sabato, 12/01/2008
esadecimale = 16 caratteri
quindi in una doppa esadecimale (da 00 a ff) in totale ci sono 16 * 16 = 256 combinazioni ( 00 =0 e ff =255)
quindi se un carattere ascii e` un carattere in base 256 convertendo 2 caratteri esadecimali in decimali e facendo il chr() di questi otterremmo la stringa, o sbaglio?
(non sbaglio, e` retorico.)

ah ovviamente vale anche l'inverso.
se fai l'asc() di ogni carattere otterrai il decimale che se convertito in base 16 e` la doppia coppia dell'esadecimale.

Ultima modifica effettuata da P4p3r0g4 il 12/01/2008 alle 14:41
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo