If you pass in a value that has a different data type than the object, the data type of the object will be changed to match the data type of the value.
A COMVariant object has an unsigned short data type if its data type is set to COMVariantType::VT_UI2.