public Variant(Variant[] value)
 {
     this.Value = value;
     this.Type = VariantType.Variant;
     this.ArrayDimensions = new int[value.Rank];
     for (int i = 0; i < value.Rank; i++)
     {
         this.ArrayDimensions[i] = value.GetLength(i);
     }
 }