[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Odzyskiwanie plików .w




>Mam pytanie - czy można odzyskać pliki .w maj±c pliki .r ?
>Czy potrzebne jest do tego jakie¶ specjalne narzędzie ?

Pliki *.r są plikami zawierającymi moduły w postaci skompilowanej, 
wprawdzie nie do postaci rozkazów maszynowych, tylko do jakiejś pośredniej 
postaci interpretowanej przez "maszynę" o nazwie run-time Progress'a. Pliki 
*.w, aczkolwiek automatycznie wygenerowane, są plikami źródłowymi. Proces 
uzyskiwania plików źródłowych ze skompilowanych, niezależnie od języka 
programowania, nazywa się "dekompilacją" i z założenia jest operacją 
nieodwracalną. Po to własnie robi się kompilatory, by postać skompilowana 
była inna niż źródłowa - przez to są pozbawione błedów składniowych oraz 
zoptymalizowane pod względem czasu wykonywania i zajętości pamięci. Są 
języki programowania (np: stary Basic), które są interpretowane, to znaczy 
wykonywane są poszczególne instrukcje tego języka bez ich kompilacji. Dla 
niektórych języków programowania istnieją programy wykonujące dekompilację, 
ale uzyskany kod "pseudo źródłowy" bardzo mocno odbiega od jego pierwotnej 
postaci, np: prawie nigdy nie uzyskuje sie pierwotnych nazw zmiennych, a 
już na pewno nigdy dyrektyw makrogeneratora (np: warunkowej kompilacji), 
których w plikach *.w jest pełno.

Jeśli idzie o Progress'a, to nie słyszałem, by był taki program istniał. 
Gdyby jednak nawet był, to uzyskana postać "pseudo źródłowa" pozwalałaby 
raczej zorientować się co ten program robi a nie służyć jako podstawa do 
ponownej kompilacji po wprowadzeniu np: jakichś zmian.
Tak że, mimo że "sprawa jest bardzo pilna", to chyba nie ma na to rady.
Pozdrawiam,


Henryk Jusza               mailto:henju@pg.gda.pl
--------------------------------------------------------------
Ośrodek Informatyczny Politechniki Gdańskiej
Pracownia Rozwoju Oprogramowania
tel (058) 347-28-01          fax (058) 347-24-63

------
Strona WWW:     http://pluton.pol.lublin.pl/pugpl/index.htm
Obsluga listy:  listserv@zeto.bydgoszcz.pl
Archiwum listy: http://www.zeto.bydgoszcz.pl/progress/index.html
------