Wstrzykiwanie DLL pisanej w C#

Odpowiedz Nowy wątek
2011-09-25 10:43
Skoczek
0

Napisałem bibliotekę napisaną w C#. Ale teraz stoję na etapie, takim że nie wiem jak zastąpić funkcję DLLMain(). Ogólnie program do wstrzykiwania także jest napisany w C# (dzięki DLLImport), ale mam też wersję w C++ (jeśli to jakaś różnica).
Myślałem nad uruchamianiu funkcji statycznych z DLL, ale za bardzo nie wiem jak się do tego zabrać.

Pozostało 580 znaków

2011-09-25 10:53
Rev
0

Możesz w docelowej aplikacji stworzyć wątek (CreateRemoteThread) i uruchomić natywną funkcję z biblioteki. Ale tak szczerze mówiąc, nie wiem czy wstrzykiwanie .NETowej biblioteki to jest najlepszy pomysł. Przede wszystkim będzie musiał być załadowany cały CLR do takiej aplikacji. Kiedyś był jeszcze problem z kompatybilnością wersji, jak np. aplikacja miała już załadowaną jakąś wersję runtime, a ty wstrzykiwałeś bibliotekę z innym to się wszystko wywalało. W .NET 4 to ponoć poprawili co prawda, ale dalej jakoś nie uważam, że .NET to najlepsze narzędzie do tego.


Pozostało 580 znaków

2011-09-25 10:59
Skoczek
0

Możesz podać jakiś przykład do tego, abym mógł sobie to jakoś wyobrazić?

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0