System.InvalidCastException в FFDShow Video Decoder в учетной записи "Стандартный пользователь"
Исключение:
Невозможно привести объект COM типа "System.__ComObject" к типу интерфейса "DirectShowLib.IBaseFilter". Эта операция завершилась неудачно, поскольку вызов QueryInterface для компонента COM для интерфейса с IID '{56A86895-0AD4-11CE-B03A-0020AF0BA770}' завершился неудачно из-за следующей ошибки: такой интерфейс не поддерживается (Исключение из HRESULT: 0x80004002 (E_NOINTERFACE)),
Мой график:
Пользовательский источник файлов (асинхронный) -> GDCL Mpeg-4 Демультиплексор -> ffdshow Video Decoder -> Video Renderer
Мой график строится и воспроизводится правильно на учетной записи администратора. Однако, когда он входит в учетную запись "Стандартный пользователь", он вызывает исключение при использовании фильтра FFDShow.
Код:
IBaseFilter pffdshowVideoDecoder = (IBaseFilter)Activator.CreateInstance(Type.GetTypeFromCLSID(CLSID_ffdshowVideoDecoder));
Создание экземпляра не вызывает исключение, только когда я пытаюсь привести его под учетной записью обычного пользователя.
Дополнительная информация:
- Моя программа настроена на STAThread
- Создание и приведение объекта в мой главный поток