2009-08-26 11 views
1

Ich frage meist aus Neugierde.Rufen Sie eine Methode für ein .NET-Objekt in einer anderen beliebigen Anwendung auf

Bei der Verwendung von TestComplete habe ich festgestellt, dass ich mein Skript auf eine beliebige laufende .NET-Anwendung zeigen, ein Steuerelement abrufen, darüber reflektieren und sogar Methoden aufrufen kann. Ich habe keine Ahnung, wie sie das schaffen. Soweit ich das beurteilen kann, ist das keine einfache UIAutomation, da ich private Felder erfassen kann. Auch das ist kein Remoting, da die App keine zusätzlichen Hooks hat.

Wie kann ich ein anderes .NET-Objekt erhalten, das in einem anderen Prozess ausgeführt wird, und es aufrufen?

Antwort

1

Dies ist eine Form der Code-Injektion.

Es ist nur viel einfacher mit. Net, sobald Sie injiziert wurden, um invasive Dinge wie das Ergreifen von privaten Variablen und dergleichen zu tun, weil die Introspektions-Aspekte bereits eingebaut sind für Sie zu verwenden.

Diese code project article shows you how to do it

Verwandte Themen