One Dev Question with Raymond Chen - Why Can't I Draw on the Desktop Anymore?

Play One Dev Question with Raymond Chen - Why Can't I Draw on the Desktop Anymore?
Sign in to queue


The 'One Dev Question with Raymond Chen' video series is part of the One Dev Minute channel.  In this series, longtime Microsoft developer and semi-official Windows historian Raymond Chen covers a series of questions about Microsoft Windows development, team culture, and/or history.  If you have additional questions for Raymond, please add your questions in the comments section below.  You can also find out more development details about Windows and its history on Raymond's blog.



The Discussion

  • User profile image
    Nick B

    What's the context for this question? When could anyone ever "scribble" on the desktop? With what?

  • User profile image

    For context, one example might be an app that put an animated fish tank on the desktop (not a screen saver) where the fish swim on the desktop behind your open windows. Another might be an app where it snows on the desktop behind your open windows.

  • User profile image

    Rainmeter is a good example.


    Generic Comment Image

  • User profile image


  • User profile image

    For another example, .NET is notoriously evil when it comes to latching on to the first window your app displays. So if you need to display stuff before your first real window shows, and you don't want weird affinity bugs, drawing straight to the desktop can be a nice way to do it.

    For another another example, say you're using a 3rd party dll (no source code) and you need to do some user notification while the dll is off doing whatever. A graceful fade-in/fade-out of a notification drawn directly to the screen DC can be a much easier (less buggy) way of doing that...and sometimes it's the only way of doing it short of launching another process.

    In any event, I'm running the latest (released) updates to Win10 here (in Jun-2016) and can write to the screen DC just fine...when did (does?) this change?

Add Your 2 Cents