Index   Commented   Search   About

VariantClear

pvarg)
VARIANTARG FAR* pvarg

Clears a variant.

Parameter

pvarg

Pointer to the VARIANTARG to clear.

Return Value

The SCODE obtained from the returned HRESULT is one of the following:

SCODE
Meaning
S_OK
Success.
DISP_E_ARRAYISLOCKED
The variant contains an array that is locked.
DISP_E_BADVARTYPE
The variant type pvarg is not a valid type of variant.
E_INVALIDARG
One of the arguments is invalid.

Comments

This function should be used to clear variables of type VARIANTARG (or VARIANT) before the memory containing the VARIANTARG is freed (as when a local variable goes out of scope).

The function clears a VARIANTARG by setting the vt field to VT_EMPTY and the wReserved field to 0. The current contents of the VARIANTARG are released first. If the vt field is VT_BSTR, the string is freed; if the vt field is VT_DISPATCH, the object is released. If the vt field has the VT_ARRAY bit set, the array is freed.

In certain cases, you may prefer to clear a variant in your own code, without calling VariantClear. For example, it is permissible to change the type of a VT_I4 variant to some other type without calling this function. However, you must call VariantClear if you receive a VT_type that you are not prepared to handle. Using VariantClear in these cases ensures that your code will continue to work if OLE Automation adds new variant types in the future.

Example

for(i = 0; i < celt; ++i)

VariantClear(&rgvar[i]);

Related Links

Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
TMS Scripter Studio Pro components for Delphi/C++Builder

More Online Helps

Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (sock2.hlp)
Unix Manual Pages

Free Tech Secrets ;) Copyright © 2008 Free Tect Secrets ;) greatis just4fun network just4fun