OleCreateLinkFromData, fonction (ole2.h)
Crée un objet lié à partir d’un objet de transfert de données récupéré dans le Presse-papiers ou dans le cadre d’une opération de glisser-déplacer OLE.
Syntaxe
HRESULT OleCreateLinkFromData(
[in] LPDATAOBJECT pSrcDataObj,
[in] REFIID riid,
[in] DWORD renderopt,
[in] LPFORMATETC pFormatEtc,
[in] LPOLECLIENTSITE pClientSite,
[in] LPSTORAGE pStg,
[out] LPVOID *ppvObj
);
Paramètres
[in] pSrcDataObj
Pointeur vers l’interface IDataObject sur l’objet de transfert de données à partir duquel l’objet lié doit être créé.
[in] riid
Référence à l’identificateur de l’interface que l’appelant utilise ultérieurement pour communiquer avec le nouvel objet (généralement IID_IOleObject, défini dans les en-têtes OLE comme identificateur d’interface pour IOleObject).
[in] renderopt
Valeur de l’énumération OLERENDER qui indique les fonctionnalités de dessin ou de récupération de données mises en cache localement de l’objet nouvellement créé. D’autres considérations sont décrites dans la section Remarques suivante.
[in] pFormatEtc
Pointeur vers une valeur de l’énumération OLERENDER qui indique les fonctionnalités de dessin ou de récupération de données mises en cache localement que l’objet nouvellement créé doit avoir. La valeur OLERENDER choisie affecte les valeurs possibles pour le paramètre pFormatEtc .
[in] pClientSite
Pointeur vers un instance de IOleClientSite, l’interface principale via laquelle l’objet demande des services à partir de son conteneur. Ce paramètre peut être NULL.
[in] pStg
Pointeur vers l’interface IStorage sur l’objet de stockage. Ce paramètre ne peut pas avoir la valeur NULL.
[out] ppvObj
Adresse de la variable pointeur qui reçoit le pointeur d’interface demandé dans riid. Une fois le retour réussi, ppvObj contient le pointeur d’interface demandé sur l’objet nouvellement créé.
Valeur retournée
Cette fonction retourne S_OK en cas de réussite. Les autres valeurs possibles sont les suivantes.
Code de retour | Description |
---|---|
|
Impossible d’ouvrir le Presse-papiers. |
|
Impossible d’extraire le moniker de l’objet. |
|
Impossible de lier à la source. La liaison est nécessaire pour obtenir les données d’initialisation du cache. |
Remarques
La fonction OleCreateLinkFromData est utilisée pour implémenter une opération coller-lien ou glisser-lien. Son fonctionnement est similaire à celui de la fonction OleCreateFromData , sauf qu’il crée un lien et recherche différents formats de données. Si le format CF_LINKSOURCE n’est pas présent et que le format de Presse-papiers FileName ou FileNameW est présent dans l’objet de transfert de données, OleCreateLinkFromData crée un package contenant le lien vers le fichier indiqué.
Vous utilisez les paramètres renderopt et pFormatetc pour contrôler la fonctionnalité de mise en cache de l’objet nouvellement créé. Pour obtenir des informations générales sur la façon de déterminer ce qui doit être mis en cache, reportez-vous à l’énumération OLERENDER pour obtenir une description de l’interaction entre renderopt et pFormatetc. Il existe toutefois des effets spécifiques supplémentaires de ces paramètres sur la façon dont OleCreateLinkFromData initialise le cache, comme suit.
Valeur | Description |
---|---|
OLERENDER_DRAW, OLERENDER_FORMAT | Si les informations de présentation sont dans les autres formats de l’objet de données source, ces informations sont utilisées. Si les informations ne sont pas présentes, le cache est initialement vide, mais il est rempli la première fois que l’objet est exécuté. Aucun autre format n’est mis en cache dans l’objet nouvellement créé. |
OLERENDER_NONE, OLERENDER_ASIS | Rien ne doit être mis en cache dans l’objet nouvellement créé. |
Configuration requise
Condition requise | Valeur |
---|---|
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 | ole2.h |
Bibliothèque | Ole32.lib |
DLL | Ole32.dll |