Share via


Metodo IFilterMapper2::RegisterFilter (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il RegisterFilter metodo aggiunge informazioni di filtro al Registro di sistema.

Sintassi

HRESULT RegisterFilter(
  [in]      REFCLSID         clsidFilter,
  [in]      LPCWSTR          Name,
  [in, out] IMoniker         **ppMoniker,
  [in]      const CLSID      *pclsidCategory,
  [in]      LPCOLESTR        szInstance,
  [in]      const REGFILTER2 *prf2
);

Parametri

[in] clsidFilter

Identificatore di classe (CLSID) del filtro.

[in] Name

Nome descrittivo per il filtro.

[in, out] ppMoniker

Indirizzo di un puntatore a un moniker del dispositivo che determina dove verranno scritti i dati del filtro. Può essere NULL.

[in] pclsidCategory

Puntatore alla categoria di filtro del filtro. Se NULL, la categoria predefinita è CLSID_ActiveMovieFilters. Vedere Categorie di filtri.

[in] szInstance

Dati di istanza per la costruzione del nome visualizzato del moniker del dispositivo. Può essere il nome descrittivo o la rappresentazione di stringa del CLSID del filtro. Se NULL, il valore predefinito è CLSID del filtro.

[in] prf2

Puntatore a una struttura REGFILTER2 contenente informazioni sul filtro.

Valore restituito

Restituisce un valore HRESULT . I valori possibili includono quelli illustrati nella tabella seguente.

Codice restituito Descrizione
S_OK
Operazione completata.
VFW_E_BAD_KEY
Impossibile ottenere la chiave del Registro di sistema.

Commenti

Questo metodo aggiunge informazioni sul filtro al Registro di sistema, sotto la voce del Registro di sistema per la categoria di filtro specificata. Non registra il server in-process che crea il filtro (in genere una DLL). Per registrare il server, è possibile chiamare la funzione AMovieDllRegisterServer2 .

Per il parametro ppMoniker , usare uno dei seguenti elementi:

  • Indirizzo di un puntatore all'interfaccia IMoniker per un moniker del dispositivo esistente
  • Indirizzo di un puntatore all'interfaccia IMonikerNULL
  • NULL
Se si registra un filtro per un modello di driver Windows (WDM) o Plug and Play dispositivo, passare l'indirizzo del moniker del dispositivo esistente. Il filtro verrà registrato usando questo moniker. Quando il metodo viene restituito, *ppMoniker è impostato su NULL.

In caso contrario, il metodo crea un nuovo moniker. Se ppMoniker è diverso da NULL, il metodo imposta *ppMoniker in modo che punti al nuovo moniker. L'applicazione può usare questo moniker per scrivere valori privati aggiuntivi nel contenitore delle proprietà. Assicurarsi di rilasciare l'interfaccia.

Impostare ppMoniker su NULL se non si vuole fornire o ricevere il moniker.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione strmif.h (include Dshow.h)
Libreria Strmiids.lib

Vedi anche

Codici di errore e di esito positivo

Interfaccia IFilterMapper2