In previous versions of windows calling Lock on the primary surface in directdraw would grab the win16mutex and prevent other apps from using DirectDraw/GDI to update any portion of the screen until it had been unlocked. I am trying to do the same thing under XP, and it will not work. Either my code is buggy, or XP just won't let you do it anymore. Which is it, API XPerts?
Also, is there any other way to prevent any application from accessing the display while my application has it locked? I've have googled my brains out. Either I don't know the correct search terms, or it can't be done without writing a driver.
Just in case your wondering, I am trying to write a subliminal messages application that will:
1)Copy rect to 2 backbuffers
2)write message to backbuffer1
-----Trouble is at step 3 ------------
3)lock entire display (or just rect whatever works)
4)write rect with text out to screen
5)wait specified number of frames
6)write unaltered rect back to screen
7)Unlock primary display