OleRegEnumFormatEtc, fonction (ole2.h)
Crée un objet d’énumération qui peut être utilisé pour énumérer les formats de données qu’un serveur d’objets OLE a inscrits dans le registre système. Une application d’objet ou un gestionnaire d’objets appelle cette fonction lorsqu’elle doit énumérer ces formats. Les développeurs d’applications d’objets DLL personnalisées utilisent cette fonction pour émuler le comportement du gestionnaire d’objets par défaut.
Syntaxe
HRESULT OleRegEnumFormatEtc(
[in] REFCLSID clsid,
[in] DWORD dwDirection,
[out] LPENUMFORMATETC *ppenum
);
Paramètres
[in] clsid
CLSID de la classe dont les formats sont demandés.
[in] dwDirection
Indique s’il faut énumérer les formats qui peuvent être passés à IDataObject ::GetData ou les formats qui peuvent être transmis à IDataObject ::SetData. Les valeurs possibles sont extraites de l’énumération DATADIR.
[out] ppenum
Adresse de la variable pointeur IEnumFORMATETC qui reçoit le pointeur d’interface vers l’objet d’énumération.
Valeur retournée
Cette fonction retourne S_OK en cas de réussite. Les autres valeurs possibles sont les suivantes.
Code de retour | Description |
---|---|
|
Mémoire insuffisante pour l’opération. |
|
Aucun CLSID n’est inscrit pour l’objet de classe. |
|
Une erreur s’est produite lors de la lecture du Registre. |
|
La clé DataFormats/GetSet est manquante dans le Registre. |
Remarques
Les applications objet peuvent demander à OLE de créer un objet d’énumération pour les structures FORMATETC afin d’énumérer les formats de données pris en charge de deux manières. Une méthode consiste à appeler OleRegEnumFormatEtc. L’autre consiste à retourner OLE_S_USEREG en réponse aux appels du gestionnaire d’objets par défaut à IDataObject ::EnumFormatEtc. OLE_S_USEREG indique au gestionnaire par défaut d’appeler OleRegEnumFormatEtc. Étant donné que les applications d’objet DLL ne peuvent pas retourner OLE_S_USEREG, elles doivent appeler OleRegEnumFormatEtc au lieu de déléguer le travail au gestionnaire d’objets. Avec le pointeur IEnumFORMATETC fourni vers l’objet, vous pouvez appeler les méthodes d’objet d’énumération standard pour effectuer l’énumération.
La fonction OleRegEnumFormatEtc et ses fonctions frères, OleRegGetUserType, OleRegGetMiscStatus et OleRegEnumVerbs, permettent aux développeurs d’applications objet DLL personnalisées d’émuler le comportement du gestionnaire d’objets par défaut d’OLE pour obtenir des informations sur les objets du Registre. En utilisant ces fonctions, vous évitez le travail considérable d’écriture des vôtres et les pièges inhérents au travail directement dans le registre. En outre, vous bénéficiez d’améliorations et d’optimisations futures de ces fonctions sans avoir à les coder vous-même.
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 |