Reference

VarNot(3w)

NAME

VarNot (OLEAUT32.174)

SYNOPSIS

HRESULT VarNot
(
LPVARIANT pVarIn,
LPVARIANT pVarOut
)

DESCRIPTION

Perform a not operation on a variant.

PARAMS

pVarIn [In] Source variant.

pVarOut [Out] Destination for converted value.

RETURNS

Success: S_OK. pVarOut contains the converted value.

Failure: An HRESULT error code indicating the error.

NOTES

- Strictly speaking, this function performs a bitwise ones complement on the variants value (after possibly converting to VT_I4, see below). This only behaves like a boolean not operation if the value in pVarIn is either VARIANT_TRUE or VARIANT_FALSE and the type is signed.

- To perform a genuine not operation, convert the variant to a VT_BOOL before calling this function.

- This function does not process by-reference variants.

- The type of the value stored in pVarOut depends on the type of pVarIn, according to the following table:

Input Type Output Type

---------- -----------

VT_EMPTY VT_I2

VT_R4 VT_I4

VT_R8 VT_I4

VT_BSTR VT_I4

VT_DECIMAL VT_I4

VT_CY VT_I4

(All others) Unchanged

IMPLEMENTATION

Declared in "oleauto.h".

Implemented in "dlls/oleaut32/variant.c".

Debug channel "variant".

History