Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The IWbemContextArray data structure defines the wire format for array data that is used by this protocol. IWbemContextArray has the following structure:
-
IWbemContextArray = ElementCount ElementSize *Elements
ElementCount MUST be an integer that represents the number of elements in the array. ElementCount = UINT32.
ElementSize MUST represent the size of a single element in the array. The size MUST match the size of the elements. ElementSize = UINT32.
Elements is a variable stream of bytes that represent all element values in the array. (Array elements are marshaled in a different representation from nonarray elements.)
Each element MUST be marshaled as an array of bytes that use the following representation.
Type
Marshaling
VT_BSTR
MUST be marshaled as an IWbemContextString. In this case, ElementSize SHOULD be set to 4 or 8.<4>
VT_IUNKNOWN
MUST be marshaled as an array of bytes that represent a marshaling buffer for the IWbemClassObject interface. In this case, ElementSize SHOULD be set to 4 or 8.<5>
VT_NULL
MUST be marshaled as 0 bytes.
VT_I1, VT_UI1
MUST be marshaled as 1 byte.
VT_I4, VT_UI4
MUST be marshaled in 4-byte little-endian format.
VT_R4
MUST be marshaled as an array of 8 bytes with the first 4 bytes containing the value of the property, as specified in [IEEE754], in a 4-byte floating-point format.
VT_R8
MUST be marshaled as an 8-byte floating-point format, as specified in [IEEE754].
VT_I2, VT_BOOL, VT_UI2
MUST be marshaled as a 2-byte little-endian format.