Click to See Complete Forum and Search --> : Variants.
phlebas
May 4th, 1999, 06:52 PM
I use Variants all the time (mainly COleVariant), however today I simply wanted to construct a Variant using a CString. I hit my head against the wall many times, trying crappy things like
* T2OLE (with SysAlloc whatever)
* _variant_t.SetString
* var.pbVal = "such and such"
* COleVariant(str), var=olevar.Detach()
and I couldn't get it to work at all. I feel like an idiot, but could someone purlease put me out of my misery.
CString into Variant.
Consider Phlebas
rick
July 20th, 1999, 10:54 AM
Hi,
first of all there is no way that you can put a CString in to a VARIANT you first have to pass the CString to a BSTR then you will be able to add the BSTR to the VARIANT;
eg.
CString szSomeStr("Some text");
BSTR bstrSomeStr = szSomeStr.AllocSysString ( ); VARIANT vSomeVariant;
vSomeVariant.vt = VT_BSTR;
vSomeVariant.bstrVal = bstrSomeStr;
and that should do it...
Rick
Rick
July 20th, 1999, 10:54 AM
Hi,
first of all there is no way that you can put a CString in to a VARIANT you first have to pass the CString to a BSTR then you will be able to add the BSTR to the VARIANT;
eg.
CString szSomeStr("Some text");
BSTR bstrSomeStr = szSomeStr.AllocSysString ( ); VARIANT vSomeVariant;
vSomeVariant.vt = VT_BSTR;
vSomeVariant.bstrVal = bstrSomeStr;
and that should do it...
Rick
chiuyan
July 20th, 1999, 11:50 AM
Can't you just sayCString MyString("String");
COleVariant MyVariant (MyString);
ColeVariant has an LPCSTR constructor, and CString has an LPCSTR operator.
HTH
--michael
codeguru.com
Copyright Internet.com Inc., All Rights Reserved.