Visualizzazione dei risultati da 1 a 2 su 2

Discussione: da .exe a .cpp

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    3

    da .exe a .cpp

    Per favore, se questa è una domanda assurda non inveite contro il mio povero cervello, ma deridetelo semplicemente:

    io ho un file .cpp ed un file .exe: é possibile sapere se il file .exe deriva dal .cpp senza compilare quest'ultimo?

    Il problema nasce dal fatto che non riesco a far lanciare un compilatore C++ (Dev-C++) dalla pagina web che sto scrivendo in (PHP), ma riesco solo ad eseguire i .exe, ma per problemi di sicurezza dovrei controllare che il file .cpp non sia pericoloso (in realtà mi basta che dentro non ci sia una certa operazione). Però se il file .cpp non è pericoloso io non so compilarlo e quindi lo compilo a parte dal web oppure me lo faccio spedire già compilato, ma devo controllare che il file .exe corrisponda a quello controllato sennò è tutto un cavolo :master:

    Grazie 1000
    Fab

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Non è così semplice la faccenda. Esistono dei decompilatori e disassemblatori per i file eseguibili, ma non credo che ricostruiscano il codice C++ sorgente. Decompilare è un'operazione che di solito è fattibilissima per linguaggi i cui "compilati" vengono interpretati e non eseguiti direttamente.
    Il disassemblaggio, invece, consiste nell'ottenere il codice Assembly corrispondente alle istruzioni macchina presenti nel file eseguibile.

    Quindi, a meno che non esista un decompilatore in grado di riottenere un codice C++ da un eseguibile, credo che la cosa non si possa fare.

    Supponendo, comunque, che si possa fare, non credo che tu abbia modo di constatare se esiste o meno quella certa operazione. Dato che le stesse cose, con un linguaggio, si possono fare in molti modi differenti, bisogna vedere come traduce certe istruzioni macchina in C++ l'ipotetico compilatore... sempre se questo esiste, comunque, credo che le traduca attraverso chiamate a funzioni di così basso livello che, probabilmente, non riuscirai mai a trovare l'istruzione che cerchi, anche se il file la esegue.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.