3.2.5.2.1.15 INtmsLibraryControl1::SetNtmsRequestOrder (Opnum 18)

The SetNtmsRequestOrder method sets the order in which a request will be processed in the library queue.

 HRESULT SetNtmsRequestOrder(
   [in] LPNTMS_GUID lpRequestId,
   [in] DWORD dwOrderNumber
 );

lpRequestId: A pointer to the identifier of a library request.

dwOrderNumber:  The order in the queue in which the request will be processed. This queue MUST start with order 1.

Return value/code

Description

0x00000000

S_OK

The call was successful.

0x80070005

ERROR_ACCESS_DENIED

NTMS_CONTROL_ACCESS to the library is denied; other security errors are possible but indicate a security subsystem error.

0x80070008

ERROR_NOT_ENOUGH_MEMORY

An allocation failure occurred during processing.

0x80070057

ERROR_INVALID_PARAMETER

The library or operation identifiers are missing.

0x800710D9

ERROR_DATABASE_FAILURE

The database is inaccessible or damaged.

Upon receiving this message, the server MUST verify that lpRequestId is not NULL, and dwOrderNumber is valid. If parameter validation fails, the server MUST immediately fail the operation and return ERROR_INVALID_PARAMETER (0x80070057).

If parameter validation succeeds, the server MUST compose a response to the client after verifying that the user has the required access rights. If the client does not have the required access rights, the server MUST return ERROR_ACCESS_DENIED (0x80070005).

The SetNtmsRequestOrder method sets the order that the specified request will be processed in the library queue.

The server MUST maintain the request queue sorted by request types, as specified in section 2.2.4.3. The server MAY select its own ordering mechanism within the same type of requests.<22>