读书人

VARIANT*变量怎么赋值

发布时间: 2013-01-23 10:44:49 作者: rapoo

VARIANT*变量如何赋值
一个函数的蚕食类型是 VARIANT*的,像赋值字符串类型的数据 请问如何做
如果把wchar_t*赋值给VARIANT* 如何转换呢
[解决办法]
用_variant_t转换吧。
[解决办法]


VARIANT res;
wchar_t* wt = L"adsd";
res.vt = VT_BSTR;
CString cs(wt);
res.bstrVal = cs.AllocSysString();

[解决办法]
VARIANT是个结构,其中有个联合类型,有BSTR bstrVal可用。
http://www.usidcbbs.com/simple/?t1733.html
这个网页中有wchar_t*转换为BSTR的例子。
[解决办法]
wchar_t* wt = L"adsd";
VARIANT res = _variant_t(wt);
func(&res);
[解决办法]
引用:
VARIANT *a;
wchar_t *aaa=L"123123";
_bstr_t bstrt(aaa);
bstrt += " (_bstr_t)";
a->bstrVal=bstrt; //这里程序直接崩溃了
TheCk(a);


当然崩溃了,都没分配内存
VARIANT *a = new VARIANT;

读书人网 >VC/MFC

热点推荐