Das Thema ist ziemlich vage, da ich nicht sicher bin, was ist die richtige Terminologie für das, was ich versuche zu tun.Wie eine Klasse in einer DLL ersetzen?
Ich habe eine dll
heruntergeladen (ich habe nicht den Quellcode), und mit einem Reflexionstool, fand ich einen Fehler in der dll
Implementierung. Der Fehler ist einfach zu beheben. Also lassen Sie uns sagen, der Fehler ist hier:
class A
{
void f() { // BUG!!! }
}
Gibt es eine Möglichkeit, meine eigene A
zu implementieren, die den Fehler beheben würde und injizieren sie in der Laufzeit ersetzen andere A
Instanzen?
Es hängt wirklich davon ab, was der Fehler innerhalb der Klasse tut. Sie könnten möglicherweise von dieser Klasse erben (wenn sie nicht "versiegelt" ist) und die Methodenimplementierung, die den Fehler enthält, mit Nachdruck ausblenden. –
Haben Sie Zugriff auf Entwickler der DLL? Wenn ja, bitten Sie ihn, Änderungen vorzunehmen. Bis dahin kannst du seine Lieblingskaffeetasse entführen. – danish
Duplizieren: http://stackoverflow.com/questions/1518891/fix-bugs-in-net-program-without-access-to-source –