Im developing a aplication where I need to paint a bitmap (320x240) on the window a lot of times per second. I was using the drawdib function because I receive a pointer to a RGB 24 Bitmap [Byte Pixels[240*320*3]; ) Now I want to make my application do this work using DirectDraw. The way I found to do that was getting a DC to the DirectDraw surface and paint the bitmap on the DC using StrechDIBits which is a very slow function. Im wondering If there is a way to do that copying directly the bits into the surface, like some examples that I saw that lock the surface and use the LpSurface pointer to manipulate pixels. I tried do to that but a did not get a working code. Help me please.