The IDirect3DExecuteBuffer::Lock method obtains a direct pointer to the commands in the execute buffer.
HRESULT Lock(
  LPD3DEXECUTEBUFFERDESC lpDesc  
);
 If the method succeeds, the return value is D3D_OK.
If the method fails, the return value may be one of the following values:
| D3DERR_EXECUTE_LOCKED | 
| DDERR_INVALIDOBJECT | 
| DDERR_INVALIDPARAMS | 
| DDERR_WASSTILLDRAWING | 
This call fails if the Direct3DExecuteBuffer object is locked—that is, if another thread is accessing the buffer, or if a IDirect3DDevice::Execute method that was issued on this buffer has not yet completed.
  Windows NT/2000: Requires Windows NT 4.0 SP3 or later.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in ddraw.h.
  Import Library: Use ddraw.lib.