9得票5回答
Can I free memory passed to SysAllocString?

当使用堆上的wchar_t *通过SysAllocString分配新的BSTR时,我是否需要释放原始的wchar_t *? 所以这样做是正确的吗? wchar_t *hs = new wchar_t[20]; // load some wchar's into hs... BSTR bs ...

9得票1回答
COM,包含BSTR的VARIANT。谁分配内存?

好的,所以我无法想到一个恰当的标题来概括这个。 IPrintPipelinePropertyBag接口有一个AddProperty方法,非常适合“向属性包添加属性”。 http://msdn.microsoft.com/en-us/library/aa506384.aspx AddPr...

8得票3回答
如何使用SAFEARRAY的BSTR类型来显示VARIANT中的值

我正在开发一个COM对象库,其中有一个函数返回带有SAFEARRAY的VARIANT。如何显示来自此VARIANT实例的值并将其保存在TStringList中?我尝试过在网上搜索但没有找到明确的答案。 我尝试了以下方法但没有成功: Variant V; String mystr; Var...

7得票2回答
谁拥有返回的BSTR?

假设从COM接口返回BSTR值的方法,我认为我必须释放它,我的观点正确吗? http://msdn.microsoft.com/en-us/library/aa365382(VS.85).aspx上的代码示例没有这样做。 谁错了?

7得票2回答
CComBSTR的内存泄漏问题

我看到以下代码会导致内存泄漏,但不明白为什么会这样。 CComBSTR str; pFoo->get_Bar(&str); pFoo->get_Baf(&str); 当我们没有分配任何东西时,它是如何导致泄漏的?

7得票2回答
如何将BSTR传递给printf函数?

我有一个使用VS2013构建的非Unicode(MBCS)C++项目。 如果给定一个BSTR值,我应该如何安全地将其传递给printf函数?