Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197

    sostituire stringhe in un eseguibile

    Se apro un'esegibile(viasualbasic) con un editor esadecimale tipo ultraedit, cerco un astinga all'interno e la sostituisco, poi salvo il file, nell'eseguibile è stata effettivamente sostitutita una stringa o bisogna in qualche modo ricompilare il file?
    ho provato ma non mi funziona.
    che mi dite?

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    Andare a modificare gli eseguibili è un casino è più probabile che non vada più un bel niente...

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    4
    quando modifichi una "stringa" stai attento a NON superare la sua dimensione... ossia al max puoi SOVRASCRIVERLA.

    ricorda di mettere il terminatore quando hai modificato :|

    ps=sarebbe illegale cmq.

  4. #4
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197
    Originariamente inviato da $$$
    quando modifichi una "stringa" stai attento a NON superare la sua dimensione... ossia al max puoi SOVRASCRIVERLA.

    ricorda di mettere il terminatore quando hai modificato :|

    ps=sarebbe illegale cmq.
    ILLEGALE??? DIPENDE SU CHE ESEGUIBILE LO FACCIO, PER ESEMPIO UN MIO ESEGUIBILE, ALLORA TU TI CHIEDERAI: ALLORA MODIFICA I SORGENTI,

    MA QUELLO CHE FACCIO è PURAMENTE A SCOPO DIDATTICO

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    4
    Originariamente inviato da afrappe
    ILLEGALE??? DIPENDE SU CHE ESEGUIBILE LO FACCIO, PER ESEMPIO UN MIO ESEGUIBILE, ALLORA TU TI CHIEDERAI: ALLORA MODIFICA I SORGENTI,

    MA QUELLO CHE FACCIO è PURAMENTE A SCOPO DIDATTICO
    no dico nel caso in cui tu volessi rendere "italiana" la versione di 1 proggy e poi distribuirlo ANCHE a pagamento

  6. #6
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197
    Originariamente inviato da $$$
    no dico nel caso in cui tu volessi rendere "italiana" la versione di 1 proggy e poi distribuirlo ANCHE a pagamento
    dimme dimme che è sto proggy, dai che ce provo subito
    heheheeh

    me mandano al gabbiooooo

  7. #7
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197

    mi da un errore

    in allegato trovate l'errore che mi da leseguibile con la stinga sostituita, secondo voi cos'e' successo? è cambiata la dimensione dell'eseguibile?
    Immagini allegate Immagini allegate

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    Hai rotto l'eseguibile...

  9. #9
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,310
    Per poter modificare una stringa all'interno di un eseguibile si dovrebbe conoscere anche il formato con cui questa viene salvata all'interno del file.

    Per i programmi normali, le stringhe costituiscono una risorsa ben particolare, identificabile all'interno del file eseguibile; infatti, con molti editor di risorse, è possibile aprire un file (EXE, DLL, RES...) e modificare ciascuna stringa singolarmente. Prova ad esempio con l'utility Resource Hacker...

    Una volta apportate le modifiche, devi salvare l'eseguibile aggiornato e il gioco è fatto.

    Per programmi compilati in VB, la questione si complica, poichè non si tratta di programmi nativi per Windows (benchè sia scritto nelle opzioni del compilatore), ma sono istruzioni codificate in uno "pseudolinguaggio" che viene successivamente intepretato da una macchina virtuale (MSVBVM60.DLL, per Visual Basic 6).

    Modificare le stringhe con un editor esadecimale senza sapere dove "toccare" esattamente ti ha portato ad avere un eseguibile non valido, che ti genera l'errore in questione quando tenti di lanciarlo.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    4
    quell'errore da come vedo puo essere dovuto al fatto che tu nn abbia usato un editor esadecimale.

    do solito se si usa blocco note... questo converte i caratteri speciali da 0x00 a 0x19 in spazi bianchi ecc.

    in effetti MOLTI programmi MODERNI utilizzano le string-table nelle res cosi poi cambiare arbitrariamente le stringhe con VC++ su WinNT o proggy simili nn solo stringhe anche altri risorse (template di finestre ecc...)

    ciau.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.