Re[4]: Помогите начинающему!!!!!!!!!!
От: Аноним  
Дата: 02.12.05 14:43
Оценка:
Здравствуйте, __VinT__, Вы писали:

__V>Приветсвую.

__V>В свете последнего сообшения могу посоветовать след.

__V>1. Собрать граф в GraphBuilder и проверить правильность работы

__V>филтров.
__V>2. Проверирь правильность соденения пинов в программе.
__V>3.. Вообшем нужна инфа что за пример и etc... сами понимаете


Вот пример:

#include "stdafx.h"
#include "dshow.h"
#include"iostream"

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
IGraphBuilder* pFirstGraph=0;
IMediaControl* pControls=0;
IMediaEvent* mediaEvent=0;
HRESULT hr=CoInitialize(NULL);

if(FAILED(hr))
{ cout<<"Ошибка при инициализации COM-библеотеки\n"; return hr;}

hr = CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER,
IID_IGraphBuilder, (void **) pFirstGraph);

if(FAILED(hr))
{ cout<<"Ошибка создания графа\n";return hr;}

hr=pFirstGraph->QueryInterface(IID_IMediaControl,(void**) pControls);
hr=pFirstGraph->QueryInterface(IID_IMediaEvent,(void**) mediaEvent);

hr = pFirstGraph->RenderFile(L"D:\\Prince and me.avi", NULL);
if (S_OK == hr)
{
hr = pControls->Run();
if (S_OK == hr)
{

long evCode;
mediaEvent->WaitForCompletion(INFINITE, &evCode);

}
}
pControls->Release();
mediaEvent->Release();
pFirstGraph->Release();
CoUninitialize();




return 0;
}



Взял я его с хелпов MSDN. Я вообще ни понимаю почему могли возникнуть проблемы.Я думал,что все рабочее. тем более в коде все логично. Если я не ошибаюсь, делают так:
1 инициализируют СОМ.

2 Создают фильтер

3 зопрашивают интерфейсы контроля

4 начинают воспроизведение.

5. освобождают память.

По поводу GraphBuilder ничего не знаю. Не подскажите где можна найти инфу?!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.