13.07.2015 Views

[MS-VDS]: Virtual Disk Service (VDS) Protocol Specification

[MS-VDS]: Virtual Disk Service (VDS) Protocol Specification

[MS-VDS]: Virtual Disk Service (VDS) Protocol Specification

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

If S_FALSE is returned, the client MUST check the value that pcFetched references and notaccess more than the number of elements returned in ppObjectArray.When the server receives this message, it MUST validate the following parameters:•Verify that ppObjectArray is not NULL.•Verify that pcFetched is not NULL.The server MUST perform the following:•If the number of objects from the current index to the end of the enumeration is greater than orequal to the number of objects being requested in celt:•Populate the IUnknown pointers in ppObjectArray with the next IUnknown pointers (theamount of which celt specifies) in the enumeration that is starting from the current index.•Set the value that pcFetched references to celt.•Increment the current index by celt.•Return an HRESULT that indicates failure or success.•If the number of objects from the current index to the end of the enumeration is less than thenumber of objects being requested in celt:•Populate the IUnknown pointers in ppObjectArray with the next IUnknown pointers in theenumeration. Start from the current index to the end of the enumeration.•Set the value that pcFetched references to the number of objects that were populated inppObjectArray.•Increment the current index by the number of objects that were populated in ppObjectArray.•Return S_FALSE (HRESULT of 0x00000001) if successful, or any non-zero error for failure.•If the current index is already past the list of objects in the enumeration, set the value thatpcFetched references to 0 and return S_FALSE (HRESULT of 0x00000001) if successful, or anynon-zero error for failure.3.4.5.2.1.2 IEnumVdsObject::Skip (Opnum 4)The Skip method skips a specified number of objects in the enumeration.[helpstring("method Skip")] HRESULT Skip([in] unsigned long celt);celt: The number of objects to skip.Return Values: The method MUST return zero or a non-error HRESULT (as specified in [<strong>MS</strong>-ERREF]) to indicate success or return an implementation-specific nonzero error code toindicate failure. For the HRESULT values predefined by the <strong>Virtual</strong> <strong>Disk</strong> <strong>Service</strong> Remote<strong>Protocol</strong>, see section 2.2.3.If S_FALSE is returned, the enumeration has ended and the client MUST either stopenumerating or reset the enumeration back to the beginning.[<strong>MS</strong>-<strong>VDS</strong>] — v20110610<strong>Virtual</strong> <strong>Disk</strong> <strong>Service</strong> (<strong>VDS</strong>) <strong>Protocol</strong> <strong>Specification</strong>Copyright © 2011 Microsoft Corporation.Release: Friday, June 10, 2011168 / 360

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!