   DirectDraw and Dualhead
  I''ve written a windowed mode DirectDraw (DX9, yeah I know its only DD7) app (tile based map system for use with a main display + overhead projector) in vb.net and am having massive problems with it using dualhead. When drawing to the main screen everything is fine and renders correctly, but when drawing on the 2nd display (either a 2nd monitor or the overhead projector) its renders in what appears to be software mode (looks really bad and does no smoothing during scaling).I tried forcing hardware mode when creating the device and when calling the draw method it errors with unsupported feature. I''ve heard rumors that DirectDraw only supports hardware on the primary display and switches to software for secondary displays? Does anyone have a definitive answer or a fix? I''ve searched the SDK and the web and the only reference I can find is the differences between DirectDraw and DirectDraw.CE (on MSDN) where it says Win.CE version only supports DirectDraw hardware on the primary display and switches to GDI+ for all other displays.This is causing me allot of grief, I don''t want to have to render the 2nd window in GDI and I havn''t yet learnt Direct3D coding (though I am starting). I''d just like to get this finished in 2D 1st.On a sub-note, does anyone have any good reference material for using Direct3DX''s (DX9) Sprite object? 
  Just a little bit more info, I have tried this on 4 different dual-head systems (2 using 1xAGP (GeForce2 GTS) 1xPCI (Matrox G200), and the other two using dual-head cards (GeForce 5200 and a Radeon 9800XT)). All give exactly the same result. Primary screen renders correctly, secondary renders bad.A funny thing is, if my render screen overlaps from the primary to the secondary screen, the primary portion renders correctly while the secondary renders bad. ;  Ok, got it working by enumerating the DD displays and using the GUI ID to create the DD device. Now I''ve just gotta work out which display I''m predominently on and recreate the device and surfaces. 