Neuen Eintrag ins Clipboard feststellen

  • Gibt es eine Möglichkeit über ein "event" festzustellen, ob ein neuer Eintrag ins Clipboard erfolgt ist oder muss ich das Clipboard mit ClipGet() pollen?

    :)

  • ja ist möglich jedoch aber etwas umständlich.

    man muss erst einmal über setclipboardviewer seine Anwendung registrieren damit sie die Zwischenablage überwachen kann. dann kann man das Event WM_CHANGECBCHAIN auswerten.

    am besten mal das Beispiel in der Hilfe zu _ClipBoard_SetViewer ansehen.

  • Ich habe ein kurzes Script aus 2012 gefunden, aber verstehe nicht die Funktionsweise. Irgendwie hängt das an einer GUI. Ich brauche nur den String ClipGet() ohne das Fenster in meinem Programm.

    :)

  • Habe die Lösung gefunden: das GUI ist hier im Beispiel nur ein Dummy. Jede Veränderung im Clipboard führt zu einer Anzeige der letzten Änderung.

    :)

  • Verstanden habe ich die Sache allerdings trotzdem nicht:

    DLLCall("user32.dll","int","AddClipboardFormatListener","HWND",$gui) 

    hängt das Fenster $gui in die Clipboard-Event-Liste

    GUIRegisterMsg($WM_CLIPUPDATE,"OnClipBoardChange")

    $WM_CLIPUPDATE=0x031D <-- ist das eine Windows-ID für das Event im Clipboard hat sich etwas geändert?

    Wenn ja:

    Gibt es irgendwo eine Liste der Codes für alle möglichen Windows-Events so wie CLIPUPDATE=0x031D? Habe gesucht, aber nichts gefunden.

    :)