Ok, what i'm doing is pretty simple, I blitt a surface on the back buffer, but I get a totally unrecognizable error!!!! -2147024809 Have you ever heard of that -2147024809 !!! And this only happens with this surface array!

In my code:
Code:
    A = Back.BltFast(Mouse.x - 64, Mouse.y - 16, tlTerrain(1, 1), CreateRect(0, 0, 0, 0), DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY)
    Select Case A
        Case 0
        Case DDERR_EXCEPTION
        Case DDERR_GENERIC
        Case DDERR_INVALIDOBJECT
        Case DDERR_INVALIDPARAMS
        Case DDERR_INVALIDRECT
        Case DDERR_NOBLTHW
        Case DDERR_SURFACEBUSY
        Case DDERR_SURFACELOST
        Case DDERR_UNSUPPORTED
        Case DDERR_WASSTILLDRAWING
        Case Else
            MsgBox A 'shows -2147024809
    End Select

From the DirectX Help:
Code:
Error Codes
If the method fails, it can return one of the following: 

	DDERR_EXCEPTION  
	DDERR_GENERIC  
	DDERR_INVALIDOBJECT  
	DDERR_INVALIDPARAMS  
	DDERR_INVALIDRECT  
	DDERR_NOBLTHW  
	DDERR_SURFACEBUSY  
	DDERR_SURFACELOST  
	DDERR_UNSUPPORTED  
	DDERR_WASSTILLDRAWING
Code:
Error Codes
Errors are represented by negative values and cannot be combined. This table lists the values that can be returned by all methods of the DirectDraw7, DirectDrawSurface7, DirectDrawPalette, and DirectDrawClipper objects. For a list of the error codes that each method can return, see the method description.