IDataObject::SetData, méthode (objidl.h)
Appelé par un objet contenant une source de données pour transférer des données vers l’objet qui implémente cette méthode.
Syntaxe
HRESULT SetData(
[in] FORMATETC *pformatetc,
[in] STGMEDIUM *pmedium,
[in] BOOL fRelease
);
Paramètres
[in] pformatetc
Pointeur vers la structure FORMATETC définissant le format utilisé par l’objet de données lors de l’interprétation des données contenues dans le support de stockage.
[in] pmedium
Pointeur vers la structure STGMEDIUM définissant le support de stockage dans lequel les données sont passées.
[in] fRelease
Si la valeur est TRUE, l’objet de données appelé, qui implémente SetData, possède le support de stockage après le retour de l’appel. Cela signifie qu’il doit libérer le support une fois qu’il a été utilisé en appelant la fonction ReleaseStgMedium . Si la valeur est FALSE, l’appelant conserve la propriété du support de stockage et l’objet de données appelé utilise le support de stockage pendant la durée de l’appel uniquement.
Valeur retournée
Cette méthode retourne S_OK en cas de réussite. Les autres valeurs possibles sont les suivantes.
Code de retour | Description |
---|---|
|
Valeur non valide pour lindex ; Actuellement, seul -1 est pris en charge. |
|
La valeur de pformatetc n’est pas valide. |
|
La valeur tyd n’est pas valide. |
|
La valeur dwAspect n’est pas valide. |
|
L’application objet n’est pas en cours d’exécution. |
|
L'opération a échoué. |
|
Une erreur inattendue s’est produite. |
|
La valeur dwDirection n’est pas valide. |
|
La mémoire disponible pour cette opération était insuffisante. |
Notes
SetData permet à un autre objet de tenter d’envoyer des données à l’objet de données d’implémentation. Un objet de données implémente cette méthode s’il prend en charge la réception de données d’un autre objet. S’il ne le prend pas en charge, il doit être implémenté pour retourner E_NOTIMPL.
L’appelant alloue le support de stockage indiqué par le paramètre pmedium , dans lequel les données sont passées. L’objet de données appelé ne prend pas possession des données tant qu’il n’a pas reçu les données et qu’aucun code d’erreur n’est retourné. La valeur du paramètre fRelease indique la propriété du support après le retour de l’appel. FALSE indique que l’appelant est toujours propriétaire du support et que l’objet de données ne l’utilise que pendant l’appel ; TRUE indique que l’objet de données le possède maintenant et doit le libérer lorsqu’il n’est plus nécessaire.
Le type de support spécifié dans les paramètres pformatetc et pmedium doit être le même. Par exemple, l’un ne peut pas être un handle global et l’autre un flux.
Spécifications
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | objidl.h |