Tydzień temu znalazłem się w sytuacji, w której musiałem przeczytać binarny obiekt serializowany utworzony przez inną aplikację stworzoną przez kogoś innego. Miałem tylko plik SomeSerializedData.bin, więc próbowałem ręcznie odtworzyć definicję klasy dla nieznanego obiektu i mogłem to zrobić, ze względu na metadane w zserializowanym pliku. Dziwnie, nie mogłem znaleźć żadnego narzędzia w google..NET Metadane serializacji binarnej
Pytanie 1: Dlaczego nie ma narzędzia, które odtwarza definicję klasy z binarnego serializowanego pliku/danych?
I to prowadzi do mojego drugiego pytania
Q2: Czy istnieje taki przypadek, gdy jest to niemożliwe, aby przywrócić definicję klasy z danych odcinkach? (Zakładając, że nie jest on zaszyfrowany lub w jakikolwiek sposób zaciemniony, interesują mnie przypadki związane z "domyślnymi" właściwościami binarnego edytora .NET, aby wyłączyć informacje o typie i zawarte w nim metadane).
Proszę nie tylko głosuj, powiedz mi, co jest nie tak, więc mogę poprawić pytanie. –
Myślę, że czego szukasz, nazywa się odbicie (biorąc kod maszynowy i odwrócić go z powrotem do C#) mam rację? – Liran
Czy masz kopię aplikacji, która utworzyła plik .bin? Jeśli tak, możesz go zdekompilować i spojrzeć na kod. Zobacz dotPeak: http://www.jetbrains.com/decompiler/ – dana