Я создал собственный фильтр DirectShow, который реализует CSource, например
class Myfilter : public CSource
{
~MyFilter(){ delete everything;}
}
Когда я использую этот фильтр в GraphStudio, я могу его правильно удалить, деструктор вызывается правильно.
Когда я создаю свой фильтр с помощью COM instaciation, я больше не могу удалить его с помощью delete
IBaseFilter *pFilter = NULL;
HRESULT hr = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(&pFilter));
затем удаление pFilter не вызовет деструктор.
Как я могу вызвать свой собственный деструктор для моего фильтра?