2009-08-21 2 views
2

Ich habe mir selbst beigebracht, wie man Nachrichten mit den APIs von Windows verwendet, und habe sie wirklich sehr gut gelernt. Problem ist, ich kann nicht herausfinden, wie man eine Nachricht von einer anderen Anwendung erhält, um Code innerhalb meines zu starten.Erhalte eine Nachricht von einem anderen Prozess

Im Wesentlichen möchte ich anderen, die eine kommerzielle Anwendung verwenden, erlauben, auf die Schaltfläche "Speichern" (in der kommerziellen Anwendung) zu klicken und meine Anwendung die Speichermeldung zu stoppen, den Benutzer aufzufordern und die Speicherung entweder abzubrechen um ihnen zu erlauben fortzufahren, oder das Speichern zu erlauben (was ich jetzt über Nachrichten weiß).

Ich muss nur wissen, wie man eine Nachricht fängt und stoppt sie. Wenn jemand mich auf einen API-Aufruf oder eine Funktion oder nur auf eine Dokumentation hinweisen kann, die Ihnen helfen könnte, tun Sie dies bitte.

+0

Ich wäre überrascht, wenn Sie das noch tun können. Ich dachte, die Änderungen der Prozesssicherheit, die um Windows 2000 vorgenommen wurden, verhinderten ein Durcheinander mit den Nachrichten eines anderen Prozesses. – David

+0

Ich bin mir nicht ganz sicher, aber ich denke nicht. Mit Programmen wie Winspector ist es einfach, Nachrichten zu erfassen ... und ich bin mir sicher, dass ich Programme gesehen habe, die sie stoppen. – Sivvy

Antwort

3

Auschecken Detours by Microsoft Research. Es ist möglich, aber nicht einfach. Schau dir auch an, wie clientseitige Cheats ausgeführt werden. Ich werde keine von ihnen hier verlinken, aber sie sind da draußen. Das ist im Wesentlichen, was Sie tun möchten.

+0

Danke für die Hilfe ... Detours scheint, als würde es ganz gut für das funktionieren, was ich brauche, obwohl ich der Typ bin, der das Rad gerne neu erfindet, um es zu lernen. Irgendwelche Ideen, wie man dasselbe ohne Drittanbieter-Programmierung macht? Dies ist eines der wenigen Dinge, die mich für eine Weile interessieren und ich würde gerne mehr darüber lernen. – Sivvy

+0

Es kam früher mit Docs und Quellcode, wenn Sie es herunterladen, so dass Sie genau sehen konnten, was sie taten. Es gibt eine Veröffentlichung auf der Website (siehe unten für einen PDF-Link), die in das Konzept-Level-Zeug eingeht. –

+1

http://www.cheatengine.org/ Das Tutorial macht sogar Spaß =) – Kieveli

1

Ich denke, Sie müssen Ihre eigene Anwendung an den laufenden Prozess auf die gleiche Weise anhängen, wie ein Debugger würde ... Es sei denn, die kommerzielle Anwendung verfügt über eine benutzerdefinierte Methode der Einbindung in ihre Architektur, dies zu tun.

Die nächste Frage ist ... möchten Sie diesen Pfad weitergehen.

+0

Ja ... Du hast diesen Sound irgendwie interessanter gemacht. Ich denke, ich würde diesen Weg gerne fortsetzen. – Sivvy

+0

(http://www.amazon.com/How-Debuggers-Work-Algorithms-Architecture/dp/0471149667) oder (http://www.google.com/search?hl=en&q=writing% 20a% 20debugger) – Kieveli