OleUIInsertObjectA, fonction (oledlg.h)
Appelle la boîte de dialogue Insérer un objet standard, qui permet à l’utilisateur de sélectionner une source d’objet et un nom de classe, ainsi que la possibilité d’afficher l’objet en tant que lui-même ou en tant qu’icône.
Syntaxe
UINT OleUIInsertObjectA(
[in] LPOLEUIINSERTOBJECTA unnamedParam1
);
Paramètres
[in] unnamedParam1
Pointeur vers la structure OLEUIINSERTOBJECT in-out pour cette boîte de dialogue.
Valeur retournée
Définitions de réussite/erreur standard
Code de retour | Description |
---|---|
|
Échec inconnu (inutilisé). |
|
L’utilisateur a appuyé sur le bouton OK. |
|
Aucune erreur, identique à OLEUI_OK. |
|
L’utilisateur a appuyé sur le bouton Annuler. |
Erreurs de validation de champ standard
Code de retour | Description |
---|---|
|
Les erreurs communes à toutes les boîtes de dialogue se trouvent dans la plage OLEUI_ERR_STANDARDMIN à OLEUI_ERR_STANDARDMAX. Cette valeur permet à l’application de tester les messages standard afin d’afficher les messages d’erreur à l’utilisateur. |
|
Le pointeur vers une structure OLEUIXXX passée dans la fonction était NULL. |
|
Autorisations insuffisantes pour l’accès en lecture ou en écriture à une structure OLEUIXXX. |
|
La valeur cbstruct est incorrecte. |
|
La valeur hWndOwner n’est pas valide. |
|
La valeur lpszCaption n’est pas valide. |
|
La valeur lpfnHook n’est pas valide. |
|
La valeur hInstance n’est pas valide. |
|
La valeur lpszTemplate n’est pas valide. |
|
La valeur hResource n’est pas valide. |
Erreurs d’initialisation
Code de retour | Description |
---|---|
|
Impossible de trouver le modèle de boîte de dialogue. |
|
Impossible de charger le modèle de boîte de dialogue. |
|
Échec de l’initialisation de la boîte de dialogue. |
|
Un appel à LocalAlloc ou à l’allocateur IMalloc standard a échoué. |
|
Un appel à GlobalAlloc ou à l’allocator IMalloc standard a échoué. |
|
Impossible d’appeler LoadString pour les ressources localisées à partir de la bibliothèque. |
|
Un appel à l’allocator IMalloc standard a échoué. |
Erreurs spécifiques à la fonction
Code de retour | Description |
---|---|
|
Les erreurs communes à toutes les boîtes de dialogue se trouvent dans la plage OLEUI_ERR_STANDARDMIN à OLEUI_ERR_STANDARDMAX. Cette valeur permet à l’application de tester les messages standard afin d’afficher les messages d’erreur à l’utilisateur. |
|
La valeur lpszFile n’est pas valide ou l’utilisateur dispose d’autorisations d’accès en écriture insuffisantes. Ce membre lpszFile pointe vers le nom du fichier lié à ou inséré. |
|
La valeur ppvOjb n’est pas valide. Ce membre pointe vers l’emplacement où le pointeur de l’objet est retourné. |
|
La valeur lpIOleClientSite n’est pas valide. Ce membre pointe vers le site client pour l’objet. |
|
La valeur lpIStorage n’est pas valide. Ce membre pointe vers le stockage à utiliser pour l’objet. |
|
Le membre sc de lpIO contient des informations d’erreur supplémentaires. |
|
La valeur lpClsidExclude n’est pas valide. Ce membre contient la liste des CLSID à exclure. |
|
La valeur cchFile ou lpszFile n’est pas valide. Le membre cchFile spécifie la taille de la mémoire tampon lpszFile . Le membre lpszFile pointe vers le nom du fichier lié à ou inséré. |
Remarques
OleUIInsertObject permet à l’utilisateur de sélectionner le type d’objet à insérer à partir d’une zone de liste contenant les applications objet inscrites sur le système de l’utilisateur. Pour remplir cette zone de liste, OleUIInsertObject traverse le Registre, en ajoutant chaque serveur d’objets qu’il trouve qui répond aux critères suivants :
- L’entrée du Registre n’inclut pas la clé NotInsertable.
- L’entrée de Registre inclut une clé de serveur de style OLE 1.0\\StdFileEditing\.
- L’entrée du Registre inclut la clé insère.
- Le CLSID de l’objet n’est pas inclus dans la liste des objets à exclure (membre lpClsidExcluded’OLEUIINSERTOBJECT).
Pour libérer un FICHIER HMETAFILEPICT renvoyé à partir de la boîte de dialogue Insérer un objet ou Coller un objet spécial , supprimez le métafichier attaché sur le handle, comme suit :
void FreeHmetafilepict(HMETAFILEPICT hmfp)
{
if (hmfp != NULL)
{
LPMETAFILEPICT pmfp = GlobalLock(hmfp);
DeleteMetaFile(pmfp->hMF);
GlobalUnlock(hmfp);
GlobalFree(hmfp);
}
else
{
// Handle null pointers here.
exit(0);
}
}
Notes
L’en-tête oledlg.h définit OLEUIINSERTOBJECT comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
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 | oledlg.h |
Bibliothèque | OleDlg.lib |
DLL | OleDlg.dll |