博客日历
2025年06月 | ||||||
一 | 二 | 三 | 四 | 五 | 六 | 七 |
26 | 27 | 28 | 29 | 30 | 31 | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
存档
2025年03月 2024年
03月 04月 05月 2021年
01月 02月 11月 12月 2020年
02月 03月 04月 05月 06月 07月
09月 2018年
09月 2017年
01月 02月 07月 2016年
01月 04月 07月 08月 11月 12月
2015年
01月 02月 03月 05月 09月 10月
11月 2014年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2013年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2012年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2011年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2010年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2009年
03月 04月 05月 06月 07月 08月
09月 10月 11月 12月
DirectShow.3 GetPinByName(通过名字获取Filter的IPin接口指针)
CComPtr<IPin> GetPinByName(IBaseFilter *pFilter,LPCOLESTR lpPinName)
{
CComPtr<IEnumPins> pEnumPins;
HRESULT hr=pFilter->EnumPins(&pEnumPins);
if(FAILED(hr))
{
return NULL;
}
CComPtr<IPin> pPin;
while(pEnumPins->Next((ULONG)1,&pPin,NULL)==S_OK)
{
//注意QueryPinInfo返回的pinInfo.pFilter必须手动释放
PIN_INFO pinInfo;
pPin->QueryPinInfo(&pinInfo);
if (pinInfo.pFilter!=NULL)
{
pinInfo.pFilter->Release();
pinInfo.pFilter=NULL;
}
if (wcsicmp(lpPinName,pinInfo.achName)!=0)
{
pPin.Release();
continue;
}
//找到了名字叫lpPinName得Pin
return pPin;
}
return NULL;
}
本文链接地址:
DirectShow.3 GetPinByName(通过名字获取Filter的IPin接口指针)
https://blog.qingfengju.com/index.asp?id=266
https://blog.qingfengju.com/index.asp?id=266
上一篇: 矩阵左右旋转90度的最一般算法
下一篇: 让Windows Mobile程序运行时不休眠,不关背光
分类:Win32/C++ 查看次数:8188 发布时间:2011/11/19 9:55:04