NAME

VarXor  (OLEAUT32.167)

SYNOPSIS

 HRESULT VarXor
 (
  LPVARIANT pVarLeft,
  LPVARIANT pVarRight,
  LPVARIANT pVarOut
 )

DESCRIPTION

Perform a logical exclusive-or (XOR) operation on two variants.

PARAMS

pVarLeft [In] First variant.
pVarRight [In] Variant to XOR with pVarLeft.
pVarOut [Out] Destination for XOR result.

RETURNS

Success: S_OK. pVarOut contains the result of the operation with its type taken from the table below).

Failure: An HRESULT error code indicating the error.

NOTES

- Neither pVarLeft or pVarRight are modified by this function.

- This function does not process by-reference variants.

- Input types of VT_BSTR may be numeric strings or boolean text.

- The type of result stored in pVarOut depends on the types of pVarLeft and pVarRight, and will be one of VT_UI1, VT_I2, VT_I4, VT_I8, VT_BOOL, or VT_NULL if the function succeeds.

- Type promotion is inconsistent and as a result certain combinations of values will return DISP_E_OVERFLOW even when they could be represented. This matches the behaviour of native oleaut32.

IMPLEMENTATION

Declared in "include/oleauto.h". gitlab.winehq.org/wine/wine/blob/master/include/oleauto.h

Implemented in "dlls/oleaut32/variant.c". gitlab.winehq.org/wine/wine/blob/master/dlls/oleaut32/variant.c

Debug channel "variant".


Copyright © 2024 The Wine Project. All trademarks are the property of their respective owners. Visit WineHQ for license details. Generated Dec 2024.