Monitoring clipboard data in Windows


I’m looking for a way to monitor the windows clipboard data for
changes, then do something to the freshly copied data. I have the
win32-clipboard library, and I could hack together something with a
persistent loop, but this sounds like it would be rough on processing
overhead. While looking around for alternatives, I found the Win32API
function call to SetClipboardViewer, but with only a month of Ruby
under my belt and no C, it all looks a little byzantine to me.

Anyone have suggestions for a different implementation, or a few good
resources for a newbie to the Win32API module? I’d appreciate any
suggestions you could offer.