Partager via


Indicateurs du programme de résolution de source

Définit le comportement du programme de résolution de la source. Ces indicateurs sont également utilisés par les gestionnaires de schémas et les gestionnaires de flux d’octets.

Constante/valeur Description
MF_RESOLUTION_MEDIASOURCE
0x00000001
Essayez de créer une source multimédia.
MF_RESOLUTION_BYTESTREAM
0x00000002
Essayez de créer un flux d’octets.
MF_RESOLUTION_CONTENT_DOES_NOT_HAVE_TO_MATCH_EXTENSION_OR_MIME_TYPE
0x00000010
Si la résolution de la source échoue à l’aide du gestionnaire de flux d’octets inscrit pour le type MIME ou l’extension de nom de fichier, le programme de résolution source énumère tous les gestionnaires de flux d’octets inscrits.
Les gestionnaires de flux d’octets sont inscrits par extension de nom de fichier ou type MIME. Initialement, le programme de résolution de la source tente d’utiliser un gestionnaire qui correspond à l’extension de nom de fichier ou au type MIME. En cas d’échec, l’ensemble de la résolution de la source échoue par défaut et le programme de résolution de la source retourne un code d’erreur à l’application. Toutefois, si cet indicateur est spécifié, le programme de résolution source continue d’énumérer tous les gestionnaires de flux d’octets inscrits. Peut-être qu’un gestionnaire mal mis en correspondance peut créer correctement la source de média.
Cet indicateur ne peut pas être combiné avec l’indicateur MF_RESOLUTION_KEEP_BYTE_STREAM_ALIVE_ON_FAIL. Pour plus d'informations, consultez la section Notes.
MF_RESOLUTION_KEEP_BYTE_STREAM_ALIVE_ON_FAIL
0x00000020
Si la résolution de la source échoue, le programme de résolution source ne ferme pas le flux d’octets. Par défaut, le programme de résolution source ferme le flux d’octets en cas d’échec.
Si cet indicateur est utilisé et que la résolution source échoue, l’appelant doit rappeler la méthode et définir l’indicateur MF_RESOLUTION_CONTENT_DOES_NOT_HAVE_TO_MATCH_EXTENSION_OR_MIME_TYPE.
Cet indicateur ne peut pas être combiné avec l’indicateur MF_RESOLUTION_CONTENT_DOES_NOT_HAVE_TO_MATCH_EXTENSION_OR_MIME_TYPE. Pour plus d'informations, consultez la section Notes.
MF_RESOLUTION_READ
0x00010000
Demande l’accès en lecture à la source.
MF_RESOLUTION_WRITE
0x00020000
Demande l’accès en écriture à la source.
MF_RESOLUTION_DISABLE_LOCAL_PLUGINS
0x00000040
Le programme de résolution source n’utilise pas de schéma inscrit localement ou de plug-ins de gestionnaire bytestream.
Nécessite Windows 8.

Notes

L’application définit ces indicateurs lorsqu’elle utilise l’interface IMFSourceResolver . Le programme de résolution source transmet les mêmes indicateurs aux méthodes IMFByteStreamHandler::BeginCreateObject et IMFSchemeHandler::BeginCreateObject .

Vous devez spécifier l’un des indicateurs MF_RESOLUTION_MEDIASOURCE ou MF_RESOLUTION_BYTESTREAM. Les indicateurs restants sont tous facultatifs.

L’indicateur MF_RESOLUTION_KEEP_BYTE_STREAM_ALIVE_ON_FAIL est défini pour le scénario suivant :

  1. L’application tente d’ouvrir une source sur le réseau. L’application définit l’indicateur MF_RESOLUTION_KEEP_BYTE_STREAM_ALIVE_ON_FAIL.

  2. L’URL de la source contient l’extension de nom de fichier incorrecte. Étant donné que l’extension de nom de fichier est incorrecte, le gestionnaire de flux d’octets par défaut ne peut pas créer la source multimédia. Étant donné que l’application a défini l’indicateur MF_RESOLUTION_KEEP_BYTE_STREAM_ALIVE_ON_FAIL, le programme de résolution source met en cache le flux d’octets.

  3. Le programme de résolution source retourne un code d’erreur à l’application.

  4. Le client ouvre à nouveau la source, en définissant cette fois l’indicateur MF_RESOLUTION_CONTENT_DOES_NOT_HAVE_TO_MATCH_EXTENSION_OR_MIME_TYPE. Cet indicateur oblige le programme de résolution de source à essayer tous les gestionnaires inscrits au lieu de simplement le gestionnaire par défaut. Étant donné que le flux d’octets a été mis en cache, le programme de résolution source n’a pas besoin d’ouvrir à nouveau le flux d’octets.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2008 [applications de bureau uniquement]
En-tête
Mfidl.h

Voir aussi

Constantes Media Foundation

IMFByteStreamHandler

IMFSchemeHandler

IMFSourceResolver

Programme de résolution de source