Partager via


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
S_OK
E_INVALIDARG
Un ou plusieurs paramètres ne sont pas valides.
WMDM_E_NOTSUPPORTED
Seek n’est pas implémenté sur cet appareil.
E_FAIL
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

Voir aussi

IMDSPDeviceControl, interface

IMDSPObjectInfo Interface

IWMDMOperation, interface

IWMDMStorage, interface