Delphi világ - dekompilálása Delphi
Éves lánya kérte anyja programozó:
- Igaz, hogy az eltávolítás után a program esnek az égből, egy hatalmas szerver, amely sosem fagy? Anya elgondolkozva válaszol:
- Ha apád szerver nem lóg, akkor valószínűleg még nem volt lefordítható.
Reading a fórumok programozás, néha találkoznak egy ilyen kérdésre: „Van egy lefordított program Delphi Hogyan lehet a forráskódot.?”. Általában ez a kérdés merül fel, ha a programozó elvesztette a projekt fájlokat, és csak az .exe. Inkább teljesen visszaállítani a forráskód magas szinten nem lehetséges. Ez azt jelenti, hogy mások nem lesz képes visszaállítani a forráskód a program. Hmm. igen és nem.
Kezdeni, azt kell mondanom, hogy visszaállítani a forráskód pontosan úgy, ahogy volt, nyilvánvalóan lehetetlen, hiszen a világon egy ilyen decompiler, amely képes lenne egy ilyen.
Amikor alkalmazott dekódoláshoz. Ehhez van jó néhány ok. Íme néhány ezek közül:
- Visszaállítása az eredeti kódot;
- alkalmazás portolása;
- Meghatározása a vírusok jelenlétét a programkód, vagy rosszindulatú program;
- Előforduló hibák kijavítása a program, ha a szerző az alkalmazás nem fog csinálni :)
Abban a pillanatban, Borland nem nyújt semmilyen szoftver, amely képes visszafordítani a futtatható (.exe) vagy Delphi-lefordított modulok (.dcu) a forráskódot (.pas).
Ha még mindig úgy döntött, hogy megpróbálja visszafordítani egy futtatható fájl, meg kell tudni, hogy a következő dolgokat. Forráskód Delphi általában tároljuk kétféle fájlok: forrás maga ASCII (.pas DPR). És erőforrás fájlok (.RES rc dfm DCR ...). Dfm fájlok tárolására objektumok tulajdonságait szereplő formában. Ha létrejön a végső .exe, Delphi kimásolja az adatokat .dfm fájlokat. Minden alkalommal, amikor változtatni a koordinátákat a forma, leírások a gombok vagy a kapcsolódó rendezvények, Delphi írja ezeket a változtatásokat .DFM (kivéve eljárás kódot. Ez tárolja a pas / DCU fájlok). És végül, hogy a lebontás .dfm fájlt, akkor tudnia kell, - milyen típusú források tárolt Win32 végrehajtható.
Minden program összeállított Delphi a következő részekből áll: kód, az adatok BSS. iData, TLS. RDATA. RSRC. A legfontosabb rész a lebontás és a kód .rsrc. A cikk „További funkciók hozzáadása a Delphi program” néhány érdekes tény a Delphi futtatható formátumokat, valamint tájékoztatást osztályok és DFM források. Ebben a cikkben van egy érdekes pont a cím alatt: „Hogyan adjunk a eseménykezelő a már lefordított fájlt, például, hogy módosítsa a tekt a gombot.”
A sok fajta erőforrás tárolt .exe fájl, kamat RT_RCDATA, amely tárolja, amelyek a DFM fájlt, mielőtt fordítást. DFM kinyerni az adatokat az .exe fájlt, akkor hívja az API függvény EnumResourceNames.
Art dekompilálása hagyományosan a sok művész, akik ismerik az assembler és debugger. Néhány Delphi kódvisszafejtő program azt a benyomást keltik, hogy bárki, még a korlátozott technikai tudással, lehet változtatni a fog a legtöbb Delphi futtatható fájlokat.
Összefoglalva, ha érdekli a dekompilovaniem, azt javaslom, egy pár Delphi kódvisszafejtő program: