Example: lrc_DispObject_from_variant
In this example, the lrc_DispObject_from_variant function extracts an IDispatch interface type pointer from a variant.
//Build variant IUnknown * IUnknown_0 = 0; IDispatch * IDispatch_0 = 0; { GUID pClsid = lrc_GUID("ADODB.Recordset.2.1"); IUnknown * pUnkOuter = (IUnknown*)NULL; unsigned long dwClsContext = lrc_ulong("7"); GUID riid = IID_IUnknown; lrc_CoCreateInstance(&pClsid, pUnkOuter, dwClsContext, &riid, (void**)&IUnknown_0, CHECK_HRES); } { GUID riid = IID_IDispatch; lrc_IUnknown_QueryInterface(IUnknown_0, &riid, (void**)&IDispatch_0, CHECK_HRES); } //Extract IDispatch Interface VARIANT var = lrc_variant_DispObject((IDispatch*)IDispatch_0); IDispatch_0= (IDispatch*)lrc_DispObject_from_variant(var);