contents   index   previous   next



VariantUI2From<VarType>

 

f90VB Modules

 

f90VBDefs, f90VBVariants

Summary

 

Set of low-level subroutines to convert variant data types to an unsigned 2-byte integer.

Syntax

 

subroutine VariantUI2FromUI1 (VarSrc, VarDest, iRet)

integer(BYTE_KIND),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromI1 (VarSrc, VarDest, iRet)

integer(BYTE_KIND),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromI2 (VarSrc, VarDest, iRet)

integer(SHORT_KIND),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromI4 (VarSrc, VarDest, iRet)

integer(LONG_KIND),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromUI4 (VarSrc, VarDest, iRet)

integer(LONG_KIND),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromR4 (VarSrc, VarDest, iRet)

real(FLOAT_KIND),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromR8 (VarSrc, VarDest, iRet)

real(DOUBLE_KIND),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromCy (VarSrc, VarDest, iRet)

type(CURRENCY),intent(in)::  VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromDec (VarSrc, VarDest, iRet)

type(DECIMAL),intent(in):: VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromDate (VarSrc, VarDest, iRet)

real(DATE_KIND),intent(in):: VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromBool (VarSrc, VarDest, iRet)

integer(VAR_BOOLEAN_KIND),intent(in):: VarSrc
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromStr (VarSrc, lcid, dwflags, VarDest, iRet)

integer(BSTRHNDL_KIND),intent(in):: VarSrc
integer(LCID_KIND),intent(in):: lcid
integer(DWORD_KIND),intent(in):: dwflags
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

 

subroutine VariantUI2FromDisp (VarSrc, lcid, VarDest, iRet)

integer(POINTER_KIND),intent(in):: VarSrc
integer(LCID_KIND),intent(in):: lcid
integer(SHORT_KIND),intent(out)::  VarDest
integer(HRESULT_KIND),intent(out):: iRet

Arguments

 

VarSrc [Input]

Value to coerce.

 

VarDest [Output]

Coerced value.

 

iRet [Output]

Upon return, iRet contains S_OK or an error code. See comments for more information.

 

lcid [Input]

A locale identifier.

 

dwflags [Input]

Flags that control the coercion of VarSrc. The only defined flag is LOCALE_NOUSEROVERRIDE, which forces the use of the system default locale settings, rather than custom locale settings.

Comments

 

These functions are direct wrappers to low-level functions provided by Windows’ OLE API. Rather than coding your own conversion functions, you should use these subroutines to ensure OLE-compliant conversion of variant types.

Argument iRet

 

Indicates success or failure of the subroutine. The following codes can be returned in this argument:

 

 

Value returned in argument iRet Description
S_OK Success.
DISP_E_BADVARTYPE One or both of the passed variant types are not a valid type of variant.
DISP_E_TYPEMISMATCH At least one of the variants could not be coerced to the appropriate type for this operation.
E_INVALIDARG One of the arguments is invalid.
E_OUTOFMEMORY Memory could not be allocated for the operation..
DISP_E_OVERFLOW The data pointed to by VarSrc does not fit in the destination type.

Related Topics

 

For information about: See:
Changing the type of a variant VariantChangeType
Initializing a variant VariantInit
Copying a Variant VariantCopy, VariantCopyInd
Creating new variants VariantCreate

 

 


VariantUI4From