Fonction RunGraphAndWait pour générer une table des matières
La fonction suivante est une fonction d’assistance dans un exemple de programme qui est décrit dans Génération automatique d’une table des matières.
HRESULT RunGraphAndWait(IGraphBuilder* pGraph)
{
IMediaControl* pControl = NULL;
HRESULT hr = pGraph->QueryInterface(IID_IMediaControl, (VOID**)&pControl);
if(SUCCEEDED(hr))
{
hr = pControl->Run();
if(SUCCEEDED(hr))
{
IMediaEvent* pEvent = NULL;
hr = pControl->QueryInterface(IID_IMediaEvent, (VOID**)&pEvent);
if(SUCCEEDED(hr))
{
long eventCode = 0;
hr = pEvent->WaitForCompletion(INFINITE, &eventCode);
pEvent->Release();
pEvent = NULL;
}
}
pControl->Release();
pControl = NULL;
}
return hr;
}
Rubriques connexes