Один из возможных подходов, который вы можете использовать, - это использовать бесплатный COM для регистрации.В вашем файле манифеста вы бы указали, что используете определенную группу подкомпонентов (например, подкаталог, содержащий компоненты FFDShow).Вам также необходимо создать манифест для DLL в этом подкаталоге.Основная проблема заключается в том, что вы должны создавать экземпляры своих объектов из C #, как показано ниже:
DsGuid MicrosoftDemux = new DsGuid("{AFB6C280-2C41-11D3-8A60-0000F81E0E4A}");
var demux = (IBaseFilter)Activator.CreateInstance(Type.GetTypeFromCLSID(MicrosoftDemux));
После того, как у вас есть фильтр, вы можете добавить его в свой график, привести к другим интерфейсам или что угодно ещеделать.
Чтобы помочь создать файл манифеста для компонентов FFDShow, вы можете использовать regsvr42 (описано в этом ответе: Создать файлы манифеста для регистрации Бесплатно COM
У меня естьуспешно использовал это для использования фильтров DirectShow без их регистрации. Следует иметь в виду, что COM-файлы должны находиться в том же каталоге, что и приложение, или подкаталог. Их размещение в соседнем каталоге не будет работать.