COM: Create a VT_ARRAY with VT_BSTR values

有些话、适合烂在心里 提交于 2019-12-04 12:14:11

If myComObject->AddFiles can only deal with VT_ARRAY|VT_VARIANT, the following should work too.

VARIANT myPath;
VariantInit(&myPath);

myPath.vt = VT_BSTR;
myPath.bstrVal = SysAllocString(it->c_str());

SafeArrayPutElement(filePaths.parray, &i, &myPath);

Don't you want:

filePaths.vt = VT_ARRAY|VT_BSTR;

Since you're creating a SafeArray of BSTRs?

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!