佚名通过本文主要向大家介绍了bstr,bstr t,bstr是什么类型,bstr转cstring,vt bstr等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 2个COM间接口函数调用为什么BSTR类型的参数会无故释放呢?
描述:
描述:
我有2个COM,其中一个COM在调用另外一个COM接口函数的过程中传递一个BSTR变量到那个COM中就什么都没有了呢~~
COM1中有
TCHAR FileName[200];
BSTR tmp;
tmp = A2W(FileName);
ptr->DY_StartPlayFile(8,tmp,0L);
COM2中对DY_StartPlayFile(8,tmp,0L)函数实现如下
STDMETHODIMP CCallCardFunc::DY_StartPlayFile(WORD wChnlNo, BSTR FileName, DWORD StartPos)
{
USES_CONVERSION;
TCHAR *pFileName;
//实际上FileName什么都没有,接受不到任何东西
pFileName = W2A(FileName);
if (StartPlayFile(wChnlNo, pFileName, StartPos))
return S_OK;
else
return S_FALSE;
}