| |
VB & Windows APISubclassing funktioniert nur in eigener Anwendung...wieso? | | | Autor: +++MaRuSo+++ | Datum: 08.06.11 09:22 |
| Ich nutze den hier wohl schon bekannten Tip Subclassing mit Klasse...funktioniert auch alles rihtig wunderbar...allerdings nur innerhalb der eigenen Anwendung. Sobald ich versuche einen hWnd einer anderen Anwendung zu subclassen liefert die Classe ein False zurück...jemand einen plan woran das liegen könnte, bevor ich jetzt anfang die komplette klasse zu demontieren... | |
Re: Subclassing funktioniert nur in eigener Anwendung...wieso? | | | Autor: +++MaRuSo+++ | Datum: 10.06.11 12:58 |
| Hmm, also irgendwie klappt das Hook'en auch nur in der eigenen Anwendung.
Übergebe ich die TreadID von meinem Programm klappt alles, nehm ich die TreadID von einem anderen Programm liefert die Funktion nur 0 zurück.
So wie ich das aus dem msdn rauslese muss der Parameter hMod auf den hWnd einer DLL verweisen wenn die übergebene TreaadID nicht die des eigenen Programms is.
Setze ich nun als hMod den hWnd meiner Anwendung und eine X-belibige TreadID, bekomme ich ein Fester mit "Datenausführungsverhinderung" und anschließendem abschmieren der gehooken Anwendung. o.o
Kann ich dann das Hook'en auf externe Anwendungen in VB vergessen?
Beitrag wurde zuletzt am 10.06.11 um 13:22:40 editiert. | |
Re: Subclassing funktioniert nur in eigener Anwendung...wieso? | | | Autor: +++MaRuSo+++ | Datum: 10.06.11 13:47 |
| Naja, da das erstellen einer Standard-DLL mit VB eher nur getrickse und nicht so ohne weiteres geht hab ich das noch nicht gemacht. Werd ich dann jetzt aber tun. Hätt ja auch sein können dass ich sonst irgendwas falsche mache.
Na mal guggen ob es mit der Semistandard-DLL von VB funktioniert. ^^ | |
Re: Subclassing funktioniert nur in eigener Anwendung...wieso? | | | Autor: +++MaRuSo+++ | Datum: 10.06.11 15:08 |
| Ja hab ich mir schon irgendwie auch gedacht. ^^
Also ich will eine fremde RichtTextBox Hooken um die Eingaben die dort gemacht werden zu prüfen bevor sie in die RTB geschrieben werden.
Sinn:
Die RTB gehört zu einem Chat den ich um ein paar lokale Funktionen für den Nutzer erweitern will.
Aktuell steht im Vordergrund dem User -chatüblich- die möglichkeit zu geben einen Befehl a la "/YT" in die RTB einzugeben. Beim absenden mit Entertaste soll allerdings dann mein Programm aktiv werden, löscht die RTB und führt, beim Befehl "/YT", ein paar Aktionen aus. Dazu zählen, alle im Chat geschriebenen Youtube-Links zu filtern und diese dem User dann zum anklicken anzubieten. Darauf hin wird sich, so denn ich den Hook gebacken bekomm, ein kleines Fenster mit dem entspechendem Video öffnen.
Das ganze wäre auch mittels engem Timer möglich, allerdings kann ich ohne Hook nicht verhindern das der "Befehl" in den Chat gesendet wird.
Wobei mir gerade beim schreiben die Idee kommt eine eigene RTB über die externe RTB zu setzten. Was mir angesichts der Tatsache das ich mir jetzt erstmal ne DLL zusammenfrickeln müßte, am sinnvolsten erscheint oder der leichtere Weg wäre. | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
TOP! Unser Nr. 1
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|