Неизданный фильтр DirectShow CSource вызывает сбой программы при завершении процесса

m разработка фильтра захвата DirectShow CSource. Он работает нормально, но когда я закрываю программу, которая использует фильтр (в этом случае ям тестирование с VLC, но то же самое происходит с другими программами), программа вылетает (если яя отлаживаю его в Visual Studio, затем запускается точка останова) .I '

мы уже давно занимаемся этой проблемой и обнаружили, что мой исходный фильтр и исходный поток не выпускаются; это значит, что их счетчик ссылок равен 1 в конце программы, функция DllCanUnloadNow () сообщает, что еще используются 2 объекта, и, когда вызывается CoUninitialize (), происходит сбой программы.

Я уверен, что счетчики ссылок обрабатываются правильно, так как ям с использованием реализации базовых классов. Единственная необычная вещь в моем программном обеспечении, о которой я могу думать, это то, что яиспользуя мою собственную версию DllGetClassObject (): я настроил файл .DEF для экспорта MyDllGetClassObject () вместо DllGetClassObject (), чтобы я мог вставить некоторый код перед вызовом реализации по умолчанию. Я нене думаю, что это проблема, так как яя проверил, что счетчик ссылок всех объектов, которые я возвращаю в конце MyDllGetClassObject (), равен 1.

Я предполагаю, что я'я что-то упускаю из жизни, но могуне понять, что (это самый первый фильтр захвата, который ям развивается). Любое предложение?

Заранее спасибо,

Гильермо

Ответы на вопрос(1)

Ваш ответ на вопрос