ISCPSecureExchange3::TransferContainerDataOnClearChannel, méthode (mswmdm.h)
La méthode TransferContainerDataOnClearChannel transfère les données de fichier conteneur au fournisseur de contenu via le canal clair. Le fournisseur de contenu décompose le conteneur en interne et indique quelles parties du contenu sont disponibles à mesure qu’elles sont extraites du conteneur.
Cette méthode est identique à ISCPSecureExchange::TransferContainerData , sauf que les paramètres passés à cette méthode ne sont pas chiffrés. Par conséquent, cette méthode est plus efficace.
Syntaxe
HRESULT TransferContainerDataOnClearChannel(
IMDSPDevice *pDevice,
BYTE *pData,
DWORD dwSize,
IWMDMProgress3 *pProgressCallback,
UINT *pfuReadyFlags
);
Paramètres
pDevice
Pointeur vers un objet d’appareil.
pData
Pointeur vers une mémoire tampon contenant les données actuelles transférées à partir du fichier conteneur.
dwSize
Contient le nombre d’octets dans la mémoire tampon.
pProgressCallback
Rappel de progression sur lequel le fournisseur de contenu peut signaler la progression de toutes les étapes qu’il peut avoir besoin d’effectuer. L’étape est identifiée par le paramètre EventId des méthodes IWMDMProgress3 .
pfuReadyFlags
Indicateur indiquant quelles parties du fichier conteneur sont prêtes à être lues. Ce paramètre est inclus dans le code d’authentification du message de sortie. Les indicateurs suivants indiquent ce qui est prêt.
Valeur | Signification |
---|---|
|
Les données de l’objet sont disponibles en appelant la méthode GetObjectDataOnClearChannel . |
|
Le fournisseur de contenu a déterminé qu’il ne nécessite aucun traitement et/ou modification supplémentaire du fichier transféré. Windows Media Gestionnaire de périphériques peut transférer directement le reste du fichier vers l’appareil. |
Valeur retournée
Si la méthode réussit, retourne S_OK. Si la méthode échoue, elle retourne un code d’erreur HRESULT .
Code de retour | Description |
---|---|
|
L’appelant n’est pas autorisé à utiliser cette interface. |
|
L’appelant ne dispose pas des droits nécessaires pour effectuer l’opération demandée. |
|
Le code d’authentification du message n’est pas valide. |
|
La méthode a échoué. Mettre fin à l’interaction avec le fournisseur de contenu. |
|
Un paramètre n’est pas valide ou est un pointeur NULL . |
|
Une erreur non spécifiée s'est produite. |
Notes
Windows Media Gestionnaire de périphériques appelle cette méthode à plusieurs reprises, transférant les données du fichier conteneur vers le fournisseur de contenu. Windows Media Gestionnaire de périphériques finalement appeler cette méthode avec dwSize défini sur zéro pour indiquer qu’elle n’a plus de données à transférer. Lorsque le fournisseur de contenu collecte les données et en extrait les différents objets, il signale à Windows Media Gestionnaire de périphériques quels objets, le cas échéant, sont disponibles après chaque appel. Si aucun objet n’est disponible, le fournisseur de contenu retourne S_OK avec le paramètre pfuReadyFlags défini sur zéro. Lorsque le fournisseur de contenu a déterminé qu’il ne nécessite aucun traitement et/ou modification supplémentaire du fichier transféré, l’indicateur WMDM_SCP_NO_MORE_CHANGES est retourné. Windows Media Gestionnaire de périphériques pouvez ensuite transférer directement le reste du fichier vers l’appareil.
Les données d’objet sont transférées à partir du fournisseur de contenu en appelant la méthode GetObjectDataOnClearChannel . Windows Media Gestionnaire de périphériques appelle GetObjectDataOnClearChannel à plusieurs reprises jusqu’à ce qu’il retourne zéro dans le troisième paramètre, pdwsize.
La méthode ISCPSecureExchange::TransferComplete (ou TransferCompleteForDevice si une session est active) est appelée par Windows Media Gestionnaire de périphériques pour signaler la fin d’un transfert de données.
Windows Media Gestionnaire de périphériques transmet le rappel de progression fourni par l’application au fournisseur de contenu dans le paramètre pProgressCallback. Le fournisseur de contenu peut utiliser ce paramètre pour fournir une notification de progression pour toutes les étapes qu’il doit effectuer. L’étape elle-même est identifiée par EventId, qui est le premier paramètre des méthodes de IWMDMProgress3. Une implémentation de fournisseur de contenu spécifique définit les valeurs EventId que les applications doivent utiliser.
Cette méthode est identique à ISCPSecureExchange::TransferContainerData , sauf que les paramètres passés à cette méthode ne sont pas chiffrés. Par conséquent, cette méthode est plus efficace.
Configuration requise
Plateforme cible | Windows |
En-tête | mswmdm.h |
Bibliothèque | Mssachlp.lib |