CONST_DDLOCKFLAGS
The CONST_DDLOCKFLAGS enumeration is used by the flags parameter of the DirectDrawSurface7.Lock and Direct3DVertexBuffer7.Lock methods to indicate how the lock is to be performed.
Enum CONST_DDLOCKFLAGS
    DDLOCK_DONOTWAIT     = 16384
    DDLOCK_EVENT         =    2
    DDLOCK_NOSYSLOCK     = 2048
    DDLOCK_READONLY      =   16
    DDLOCK_SURFACEMEMORYPTR = 0
    DDLOCK_WAIT          =    1
    DDLOCK_WRITEONLY     =   32
End Enum
- DDLOCK_DONOTWAIT 
- The default is DDLOCK_WAIT. If you wish to override the default and use time when the accelerator is busy (as denoted by the DDERR_WASSTILLDRAWING error value). use DDLOCK_DONOTWAIT. 
- DDLOCK_EVENT
- Not currently implemented. 
- DDLOCK_NOSYSLOCK
- If possible, do not take the Win16Mutex (also known as Win16Lock). This flag is ignored when locking the primary surface. 
- DDLOCK_READONLY
- The surface being locked is read-only. 
- DDLOCK_SURFACEMEMORYPTR
- A valid rectangle should be returned. If no rectangle is specified, the surface is returned. This is the default.
- DDLOCK_WAIT
- If a lock cannot be obtained because a blit operation is in progress, the method retries until a lock is obtained or another error occurs, such as DDERR_SURFACEBUSY.
- DDLOCK_WRITEONLY
- The surface being locked is write-enabled.