The process of changing the state using the "Insert" is specific to individual applications, so there is no magic way to find out if the state of the application has changed after accessing the buffer.
The best thing you can do is determine if the application was extracting data from the clipboard. Again, there is no way to find out what the application has done with this data. It is like someone has opened their entrance, not knowing where they went, if anywhere.
If you want to try this, you can do something like connecting the GetClipboardData function. For information on how to track system-wide APIs, check out the samples at Micrsoft Detours - http://research.microsoft.com/sn/detours
Andrew Grant
source share