MÉTHODE IMDSPDeviceControl ::Seek (mswmdm.h)
La méthode Seek recherche une position qui est utilisée comme point de départ par les méthodes Play ou Record .
Syntaxe
HRESULT Seek(
[in] UINT fuMode,
[in] int nOffset
);
Paramètres
[in] fuMode
Mode pour l’opération de recherche en cours d’exécution. Le paramètre fuMode doit être l’un des modes suivants.
Mode | Description |
---|---|
MDSP_SEEK_BOF | Recherchez une position qui est nOffset unités après le début du fichier. |
MDSP_SEEK_CUR | Recherchez une position qui est nOffset unités de la position actuelle. |
MDSP_SEEK_EOF | Recherchez une position qui est nOffset unités avant la fin du fichier. |
[in] nOffset
Nombre d’unités par lesquelles l’opération de recherche déplace la position de départ loin de l’origine spécifiée par fuMode. Les unités de nOffset sont définies par le contenu. Ils peuvent être des millisecondes pour la musique, des pages pour des livres électroniques, etc.
Une valeur positive pour nOffset indique une recherche vers l’avant dans le fichier. Une valeur négative indique une recherche vers l’arrière dans le fichier. Toute combinaison de nOffset et de fuMode qui indique que la recherche d’une position avant le début du fichier ou après la fin du fichier n’est pas valide et entraîne le retour de la méthode E_INVALIDARG.
Valeur retournée
Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.
Code de retour | Description |
---|---|
|
S_OK |
|
Un ou plusieurs paramètres ne sont pas valides. |
|
Seek n’est pas implémenté sur cet appareil. |
|
Une erreur non spécifiée s'est produite. |
Remarques
La position de recherche est définie en passant une interface IWMDMStorage pointant vers un emplacement sur un support de stockage de l’appareil, ou une interface IWMDMOperation qui a été implémentée pour prendre en charge la diffusion audio en continu. L’interface IMDSPObjectInfo peut également être passée pour décrire un point dans l’objet vers lequel l’interface spécifiée pointe.
Pour la lecture de l’appareil, si Seek n’est pas appelé avant Lecture, la lecture démarre à la première piste audio sur le premier support de stockage sur le périphérique multimédia.
Pour l’enregistrement de l’appareil, si Seek n’est pas appelé avant Record, l’opération d’enregistrement échoue. Une fois la méthode Record appelée, les appels suivants à la méthode IMDSPObjectInfo ::GetLastPlayPosition signalent la longueur totale de lecture à tout moment et sont égaux à la valeur retournée par IMDSPObjectInfo ::GetTotalLength. La longueur de l’enregistrement peut être limitée en appelant la méthode IMDSPObjectInfo ::SetPlayLength après le retour de l’appel Seek .
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | mswmdm.h |
Bibliothèque | Mssachlp.lib |