HRESULT OnExecOleCmd ( const GUID * pGroup, DWORD nCmdID, DWORD nCmdExecOut, VARIANTARG * pvaIn, VARIANTARG * pvaOut );
Valeur de retour
Retourne S_OK en cas de succès ; sinon, un des codes d'erreur suivants:
Valeur | Description |
E_UNEXPECTED | Une erreur inattendue s'est produite |
E_FAIL | Erreur s'est produite |
E_NOTIMPL | Indique les MFC elle-même doit tenter de traduire et d'envoi de la commande |
OLECMDERR_E_UNKNOWNGROUP | pGroup est non -NULL mais ne pas spécifier un groupe de commande reconnue |
OLECMDERR_E_NOTSUPPORTED | nCmdID n'est pas reconnu comme une commande valide dans le groupe pGroup |
OLECMDERR_DISABLED | La commande identifiée par nCmdID est désactivée et ne peut pas être exécutée |
OLECMDERR_NOHELP | Appelant a demandé de l'aide sur la commande identifiée par nCmdID mais aucune aide n'est disponible |
OLECMDERR_CANCELED | Utilisateur a annulé l'exécution |
Paramètres
pGroup
Pointeur vers un GUID qui identifie un ensemble de commandes. Peut être NULL pour indiquer le groupe de commande par défaut.
nCmdID
La commande à exécuter. Doit être dans le groupe identifié par pGroup.
nCmdExecOut
La façon dont l'objet doit exécuter la commande, d'un ou de plusieurs des valeurs suivantes de l'énumération OLECMDEXECOPT:
OLECMDEXECOPT_DODEFAULT
OLECMDEXECOPT_PROMPTUSER
OLECMDEXECOPT_DONTPROMPTUSER
OLECMDEXECOPT_SHOWHELP
pvaIn
Pointeur vers un VARIANTARG contenant des arguments d'entrée de la commande. Peut être NULL.
pvaOut
Pointeur vers un VARIANTARG pour recevoir la sortie des valeurs de retour de la commande. Peut être NULL.
Remarques
L'infrastructure appelle cette fonction pour exécuter une commande spécifiée ou afficher l'aide de la commande.
COleCmdUI peut servir à activer, mise à jour et définir d'autres propriétés de commandes de l'interface utilisateur DocObject. Une fois les commandes sont initialisés, vous pouvez les exécuter avec OnExecOleCmd.
L'infrastructure appelle la fonction avant d'essayer de traduire et d'envoyer une commande de document OLE. Vous ne devez substituer à cette fonction pour gérer les commandes de document OLE standard, mais vous devez fournir un remplacement pour cette fonction si vous souhaitez gérer votre propre des commandes personnalisées ou de gérer les commandes qui acceptent des paramètres ou de retournent des résultats.
La plupart des commandes ne pas prendre les arguments ou valeurs de retour. Pour la majorité des commandes de l'appelant peut passer NULLs pour pvaIn et pvaOut. Pour les commandes auxquelles s'attendent les valeurs d'entrée, l'appelant peut déclarer et initialiser une variable VARIANTARG et passer un pointeur à la variable pvaIn. Pour les commandes qui exigent une seule valeur, l'argument peut être stocké directement dans la VARIANTARG et transmis à la fonction. Plusieurs arguments doivent être emballés dans le VARIANTARG à l'aide d'un des types pris en charge (tels que IDispatch et SAFEARRAY ).
De même, si une commande retourne les arguments l'appelant devrait déclarer une VARIANTARG, initialiser à VT_EMPTY, et passer son adresse pvaOut. Si une commande retourne une valeur unique, l'objet peut stocker cette valeur directement dans la pvaOut. Plusieurs valeurs de sortie doivent être emballés de façon appropriée pour la VARIANTARG.
L'implémentation de classe de base de cette fonction sera les OLE_COMMAND_MAP des structures associées à la cible de la commande de marche et essayez d'envoyer la commande à un gestionnaire d'événements approprié. La mise en œuvre de la classe de base fonctionne uniquement avec les commandes qui ne pas accepter les arguments ou valeurs de retour. Si vous avez besoin gérer les commandes qui acceptent des arguments ou valeurs de retour, vous devez substituer cette fonction et travailler avec les paramètres pvaIn et pvaOut , vous.
|&Nbsp Aperçu de COleServerDoc ; Membres de la classe | Graphique de la hiérarchie
Voir aussi  ;COleCmdUI