OK, więc tytuł jest do niczego, ale nie mogłem wymyślić nic lepszego (może ktoś inny może?).Jak korzystać z odbicia, aby utworzyć "maszynę do refleksji"?
Mam tutaj kilka pytań dotyczących tematu. Chciałbym stworzyć program, który może wziąć obiekt i użyć refleksji do wyświetlenia wszystkich jego właściwości, metod, konstruktorów itd. Mogę następnie manipulować tymi obiektami w czasie wykonywania, aby przetestować, debugować i dowiedzieć się, co dokładnie z moich klas/programy działają, gdy są uruchomione (niektóre z nich będą usługami Windows i być może zainstalowanymi na komputerze, zamiast uruchamiać debugowanie z VS).
Pozwoliłabym więc podpiąć program, że z lokalnego komputera (tylko) ten program może pobrać instancję głównego obiektu i zobaczyć wszystkie działające w nim obiekty podrzędne. (dla bezpieczeństwa program może wymagać uruchomienia z argumentem, aby odsłonić ten hak).
"Maszyna do odbijania" umożliwiłaby manipulowanie i testowanie w czasie wykonywania.
Czy to brzmi możliwe?
Czy program musiałby dostarczyć haka, czy też "maszyna do refleksji" mogłaby pobrać EXE i (jeśli znała wszystkie klasy, z których korzystał), utworzyć obiekt do użycia?
Wiem, że można importować biblioteki DLL w środowisku wykonawczym, aby wiedział o wszystkich klasach, ale czy można importować poszczególne klasy? TO ZNACZY. Powiedzmy, że mam projekt "Y", który nie jest skompilowany do biblioteki DLL, ale chcę użyć "maszyny do refleksji", czy mogę wskazać ten katalog i pobrać pliki, aby móc odnieść się do tych klas?
EDYCJA: Chciałbym spróbować i rozwijać to samodzielnie, ale mam już długą listę projektów, które chciałbym zrobić i już się zaczęły. Po co wymyślać nowe koło, gdy jest już duży wybór do wyboru.
Nie wiem, dlaczego to pytanie zostało odrzucone. To wydaje się interesujący pomysł. Wcześniej głosowano. –