Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    Modificare un qualunque file in Hex

    Ciao,
    Vorrei sapere se è possibile in VB modificare un file in esadecimale... in più volevo sapere se è possibile fare entrambe le funzioni, cioè:
    1. Modificare tramite offset (dire al programma: vai al offset 0x000548 e modifica da 00 a FF)
    2. Modifica tramite ricerca (dire al programma: cerca 00 15 08 ER ... e modifica con 00 ......)

    grazie in anticipo

    se mi sono espresso male chiedete pure e vi deluciderò a riguardo

  2. #2

    Moderazione

    Naturalmente si può fare, ma devi specificare di che versione di VB si tratta (come da regolamento)... a seconda che si tratti di VB6 o VB.NET cambia molto.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3

    Re: Moderazione

    Originariamente inviato da MItaly
    a seconda che si tratti di VB6 o VB.NET cambia molto.
    Io non so programmare in VB quindi non saprei quale scegliere... cosa mi consigli tra le due?
    NB: Ho scelto VB per due motivi:
    1. Conosco Python e C però non ho mai sviluppato una GUI.
    2. In VB l'interfaccia grafica la generi in 5 secondi.
    2.5. Cosi avrò la possibilità di imparare qualcosa sul Visual Basic

  4. #4
    PS: Preferirei comunque VB.Net in quanto so già le basi ( anche se credo non cambi molto con vb6)

  5. #5
    Difficile darti aiuti utili se non conosci il linguaggio... quello che ti posso dire è che devi usare la classe System.IO.FileStream, in particolare i metodi Seek, ReadByte e WriteByte rispettivamente per spostarti in una data posizione del file e leggere e scrivere un byte alla posizione corrente.

    Ovviamente però prima di poter usare questo suggerimento devi imparare il linguaggio, per cui ti consiglio di comprare un manuale di qualche genere e iniziare da lì.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Presumendo che debba modificare l'offset 0x00001828 con 0F come dovrebbe essere il codice?

  7. #7
    Apri il file costruendo l'oggetto FileStream, ti sposti al tuo offset con la Seek (ricorda che in VB.NET per literal esadecimali si usa il prefisso &H) e scrivi il byte con WriteByte.
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da shuttle15
    Presumendo che debba modificare l'offset 0x00001828 con 0F come dovrebbe essere il codice?
    Ricorda che nel forum non si fornisce codice pronto per chi non sa programmare ...

    Comunque, in genere, in questo tipo di programmi al GUI non serve a nulla. Ti consiglio di scriverlo in C impostando eventuali parametri da linea di comando.

    E poi, a cosa ti servirebbe modificare un singolo byte di un file ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Originariamente inviato da oregon
    Ricorda che nel forum non si fornisce codice pronto per chi non sa programmare ...

    Comunque, in genere, in questo tipo di programmi al GUI non serve a nulla. Ti consiglio di scriverlo in C impostando eventuali parametri da linea di comando.

    E poi, a cosa ti servirebbe modificare un singolo byte di un file ?
    In C sicuro riuscirei a farlo in non più di dieci minuti se trovo il reference della libreria per gestire l'hex... però non mi va di avere un programma senza GUI (cioè finora ho fatto tutto senza interfaccia)

    Quello che sto facendo è solo un esempio in quanto appunto sto cercando di imparare VB.NET e come esperimento proverò a modificare il Salvataggio di qualche gioco (anche lo Spider di Windows andrà più che bene)

    Metterò un inputbox e un button in modo che quando clicco sul button il programma in automatico mi cambia i byte relativi al punteggio e poi salva il tutto...

    Ripeto; Questo è solo un esperimento cosi da avvicinarmi un pò anche alla programmazione VB.NET.... tra l'altro neanche a farlo a posta ho un libro di VB.Net:
    "Laboratorio di Visual Basic .NET di R. Gallifuoco" <-- comprato tanti anni, ma mai avuta la possibilità di leggerlo... chissà questa sarà la volta buona.


    Comunque, tornando a noi, anche se ho chiesto un esempio di codice, credo che @MItaly abbia risposto il più correttamente possibile evitando di inserire il codice già bello e pronto.
    Credo che la sua risposta sia il massimo in quanto è stato chiaro ed ora sta a me studiarmi i vari codici che ha citato... Grazie

    Anche il tuo consiglio è stato utile riguardo al C, però questione personale vorrei provare VB, al massimo dopo studierò come creare una GUI in C e proverò a realizzare lo stesso progetto in entrambi i linguaggi....

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Vada per il VB.NET ... anche se modificare dei byte all'interno di un file non mi sembra il miglior modo per iniziare a studiare il VB.NET ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.