3.1.4.14.3 GetMetadata (Opnum 5)

The GetMetadata method is received by the server in an RPC_REQUEST packet. In response, the server returns the specific element of named metadata.

 HRESULT GetMetadata(
   [in] BSTR bstrMetadataType,
   [out, retval] VARIANT* pValue
 );

bstrMetadataType: The name of the metadata property to fetch. Valid names are as follows.

Value

Meaning

"extension"

Returns a string that identifies the server-side extension that implements this IAppHostElementSchema instance, if one exists, or NULL otherwise. The client can use this metadata property to query if the IAppHostElementSchema has a server-side extension. The actual contents of the string are implementation-specific and MUST be ignored by the client.

pValue: Contains a VARIANT that represents the metadata that is retrieved.

Return Values: The server MUST return zero if it successfully processes the message that is received from the client. If processing fails, the server MUST return a nonzero HRESULT code as defined in [MS-ERREF]. The following table describes the error conditions that MUST be handled and the corresponding error codes. A server MAY return additional implementation-specific error codes.

Return value/code

Description

0X00000000

NO_ERROR

The operation completed successfully.

0X80070057 

ERROR_INVALID_PARAMETER

One or more parameters are incorrect or null.

0X80070032

ERROR_NOT_SUPPORTED

The metadata property specified by bstrMetadataType is not supported.

0X00000008 

ERROR_NOT_ENOUGH_MEMORY

Not enough memory is available to process this command.