Προς το περιεχόμενο

Delphi - Decompiling


Προτεινόμενες αναρτήσεις

Δημοσ.

Είχα γράψει σε κάτι παλιότερα χρόνια ένα ωραίο παιχνιδάκι σε Delphi και ενώ το είχα παρατήσει συνολικά σαν αντικείμενο, τελευταία βρήκα χρόνο και θέλω να το πιάσω για να το βελτιώσω λίγο. Το πρόβλημα μου είναι ότι έχω χάσει τον κώδικα και μου έχουν μείνει μόνο το .exe που είχε φτιάξει η Delphi και τα .pbl αρχεία που έχουν μέσα libraries που χρησιμοποιώ.

 

Έχει κανείς ιδέα πως μπορώ να αποφύγω να το ξαναγράψω από την αρχή;

Δημοσ.

Οι περισσότεροι decompilers που έχω δει δεν δημιουργούν το delphi κώδικα καθόλου. Εμφανίζουν τα ονόματα των μεθόδων από κλάσεις και μέσα έχουν assembly κώδικα σε περίπτωση που έχεις χρησιμοποιήσει και αντικείμενα-βιβλιοθήκες 3των τα πράγματα μπλέκονται πολύ. Σε κάθε περίπτωση ψάξε για DeDe decompiler εάν καταφέρεις να το βρεις γιατί είναι δισευρετο τα τελευταία 3 χρόνια.

Δημοσ.

τον βρήκα τον Dede και τον έχω κατεβάσει, αλλά κι εγώ απ' ότι βλέπω δε δίνει .pas αρχεία αλλά κάτι που μοιάζει με assembly και έχει ονόματα συναρτήσεων, αλλά ακόμα δεν έχω πολυκαταλάβει τι είναι και πως διαβάζεται.Υπάρχει κάτι άλλο πέρα από το dede που μπορεί να χρησιμοποιήσω ή μπα;

Δημοσ.

Δυστυχώς δεν μπορείς να κάνεις τίποτα, το DeDe θα σου δώσει αρκετές πληροφορίες σχετικά με το εξεταζόμενο εκτελέσιμο (Units, Procedures, Forms, Classes κλπ) αλλά ο πηγαίος κώδικας σε μορφή Delphi είναι αδύνατον πλέον να ανακτηθεί. Βλέπεις τα εκτελέσιμα που παράγει η Delphi (όπως και ο αδελφός της, ο C++ Builder) είναι native κώδικας μηχανής. Μια διέξοδος είναι (αν και εφόσον γνωρίζεις ικανή Assembly) να δοκιμάσεις το reverse engineering του προγράμματος δηλαδή να διαβάσεις & να κατανοήσεις τι κάνει κάθε γραμμή κώδικα, κάθε Procedure που σου παρέχει το DeDe και ύστερα να γράψεις εκ νέου το ανάλογο του σε Delphi (αν αξίζει φυσικά μια τόσο μεγάλη ταλαιπωρία).

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...