Hej. Jak można uzyskać dostęp do plików, które występują tylko w postaci binarnej ? np: pliki windowsa.
Zanim cokolwiek napiszesz - przeczytaj ten temat
Póki się nie zastosujesz, jedyne co mogę odpowiedzieć: najlepiej się do nich dostać skutecznie. Plus: nie wszystkie pliki windowsa (cokolwiek przez to rozumiesz) są binarne (czy raczej: nie-tekstowe). Mam też wątpliwości czy w ogóle chodzi Ci o to jak napisać odpowiedni program.
eldorado1972 ciężko zrozumieć co masz na myśli ale wypróbuj program WinHEX. pliki tekstowe otwiera się w edytorze tekstowym, binarne w heksadecymalnym.
Chodziło mi konkretnie o to jak niektórzy edytują pliki windowsa skoro nie ma do nich kodu żródłowego (myślałem ze są to pliki w postaci binarnej) ?
eldorado1972 disassemblacja a następnie edycja i ponowna kompilacja
Aby zamienić kod wynikowy (uruchamialny) na kod źródłowy w assemblerze należy skorzystać z programu zwanego disassemblerem.
tu masz przykładowy program do disassemblacji.
w plikach wykonywalnych można również edytować tzw zasoby (np ikony, grafikę, rozmieszczenie przycisków, itp) korzystając np z programu ResHacker.
grzegorzch : edycja plików wykonywalnych przeważnie nie przechodzi etapu disassemblacji - częstsze jest wyłapywanie offsetów w debugerze i pisanie makr/łatek nadpisujących załadowany do pamięci kod.
eldorado1972 : wciąż nie wiadomo o co Ci chodzi. Jakie to są “te” pliki? Po co ktoś miałby je edytować? Co ma do tego kod źródłowy?
Dzięki wam za odpowiedzi. Czytałem gdzieś , że sytemy np: Windows, Mac OS są udostępniane w kodzie binarnym w przeciwieństwie do systemów Unix-owych - co to oznacza ? :o
Chodzi o programy - są w postaci działającej a nie w postaci, w której możesz/musisz je skompilować (przeistoczyć z kodu źródłowego w kod binarny).