Veröffentlicht 4. Dezember 200222 j Hallo, ich möchte gern ein Programm unter VB.NET erstellen das die Zwischenablage verändert. Ich habe nun das Problem, dass das Programm jedes befüllen der Zwischenablage überprüfen soll und bei Text den Inhalt ändern soll. Wie fange ich Kay-Events unter VB.NET ab um diese zu manipulieren, den Rest hätte ich bereits gelöst, muß aber momentan noch immer per Klick die Zwischenablage wandeln.
4. Dezember 200222 j So wie Du es beschrieben hast, kann man das nur mit einem Hook bewerkstellingen. Leider kann ich Dir nicht sagen, ob es mit VB möglich ist, systemweite Hooks zu setzten, da ich es selbst noch nie ausprobiert habe. Genaueres kannst Du hier nachlesen. Ansonsten viel Spaß mit den subclassen
4. Dezember 200222 j Vergiss die Hooks, wenn der Inhalt der Zwischenablage geändert wurde sendet Windows die Nachricht WM_DRAWCLIPBOARD an alle Fenster, die als ClipboardViewer eingeteagen sind. Über die API Methode SetClipboardViewer kannst du dein Fenster da eintragen. Wenn du die Nachricht empfangen hast musst du nur mit SendMessage die Nachricht an den nächsten Viewer weiterleiten (bekommst du von der funktion SetClipboardviewer geliefert). Über die Nachricht WM_CHANGECBCHAIN bekommst du mit, falls ein Clipboard viewer sich aus der Kette ausgeklinkt hat und kannst dir nen aktuellen nächsten Viewer holen, sonst gibt es u.U. Probleme wenn du die Nachricht weiterleiten willst. Das ist die Windows Methode um auf Änderungen im Clipboard zu reagieren... (unabhängig von der sprache)
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.