2.2.1.1.1.5 SAFEARRAY2

The SAFEARRAY2 structure is used to pass multidimensional arrays in SERIALIZEDPROPERTYVALUE. The structure contains boundary information and the data above.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

cDims

Rgsabound (variable)

...

vData (variable)

...

cDims (4 bytes): Unsigned 32-bit integer, indicating the number of dimensions of the SAFEARRAY2.

Rgsabound (variable): An array that contains one SAFEARRAYBOUND structure per dimension in the SAFEARRAY2. This array has the leftmost dimension first and the rightmost dimension last.

vData (variable): A vector of marshaled items of a particular type indicated by the dwType of the containing SERIALIZEDPROPERTYVALUE with bit 0x2000 cleared. The format of vData is the same as that specified for the vData field of SAFEARRAY.