desktop WM_PAINT



  • Hallo

    Ist es möglich die Desktop WM_PAINT Nachricht abzufangen ?

    möchte den Destop selber Aktualisieren

    habe da schon was probiert:

    oldoverprocl = reinterpret_cast<long>( GetWindowLong(GetDesktopWindow() ,GWL_WNDPROC));
    SetWindowLong(GetDesktopWindow() ,GWL_WNDPROC,reinterpret_cast<long>(overproc));
    

    Wenn ich statt dem Handel, vom Desktop Window, das von mir erstelte Windowhandel setze nimmt er die overproc Funktion für mein Window...

    nur beim DesktopWindow scheint es nicht zu funktionieren

    also mach ich was Falsch oder gehts nich ? 🙂
    bzw. geht das was ich Vorhabe überhaupt ?



  • mit 'GetDesktopWindow()' bekommst du nicht diese oberfläche mit den icons drauf, sondern das was dahinterliegt. diesen komischen icon-desktop bekommst du mit 'FindWindow ("progman", 0)'.
    aber in deinem fall würde das wohl auch nix helfen. ich kann mir nicht vorstellen, dass man die wndproc eine anderen prozesses auf eine eigene setzen kann. dazu musst du deinen code in den anderen prozess einschleusen (durch hooks z.b.)



  • naja das hatte ich auch schon...

    scheint so nich zu gehn... "zugriff verweigert" 🙂

    Was ich ja eigentlich vorhab is so ein krasses Desktop Overlay wie bei winamp avs
    und da fehlt mir die Möglichkeit irgendwie das Desktopbild zu bekommen, ohne das dieser Neugezeichnet wird

    das "hook" hört sich interessant an, gibs irgendwo ne anleitung oder sowas ?

    thx 4 help



  • dsk schrieb:

    Was ich ja eigentlich vorhab is so ein krasses Desktop Overlay wie bei winamp avs
    und da fehlt mir die Möglichkeit irgendwie das Desktopbild zu bekommen, ohne das dieser Neugezeichnet wird

    Was genau willst du dir holen - einen Screenshot kannst du einfach über GetDC machen 🕶

    dsk schrieb:

    das "hook" hört sich interessant an, gibs irgendwo ne anleitung oder sowas ?

    SetWindowsHookEx



  • das mit dem Screenshot hab ich schon, und das er nur auf eine bestimmte Farbe zeichnet auch...

    brauche halt nur ein frisches Desktopabbild (ohne das er ihn Neuzeichnet)


Anmelden zum Antworten