Partager via


Structure DFMICS (shlobj_core.h)

Contient des arguments supplémentaires utilisés par DFM_INVOKECOMMANDEX.

Syntaxe

typedef struct {
  DWORD                 cbSize;
  DWORD                 fMask;
  LPARAM                lParam;
  UINT                  idCmdFirst;
  UINT                  idDefMax;
  LPCMINVOKECOMMANDINFO pici;
  IUnknown              *punkSite;
} DFMICS, *PDFMICS;

Membres

cbSize

Type : DWORD

Taille de cette structure, en octets.

fMask

Type : DWORD

Zéro, ou un ou plusieurs des indicateurs suivants qui spécifient comment gérer les données dans la structure CMINVOKECOMMANDINFO ou CMINVOKECOMMANDINFOEX pointée par pici.

CMIC_MASK_HOTKEY

Le membre dwHotKey est valide.

CMIC_MASK_ICON

Non utilisé.

CMIC_MASK_FLAG_NO_UI

L’implémentation de IContextMenu ::InvokeCommand ne peut pas afficher les éléments de l’interface utilisateur (par exemple, les messages d’erreur) lors de l’exécution d’une commande.

CMIC_MASK_UNICODE

Utilisé uniquement lorsque pici pointe vers une structure CMINVOKECOMMANDINFOEX . Indique que le gestionnaire de menu contextuel doit utiliser les membres lpVerbW, lpParametersW, lpTitleW et lpDirectoryW au lieu de leurs équivalents ANSI. Étant donné que certains gestionnaires de menus contextuels peuvent ne pas prendre en charge Unicode, vous devez également passer des chaînes ANSI valides dans les membres lpVerb, lpParameters, lpTitleW et lpDirectory .

CMIC_MASK_NO_CONSOLE

Si un gestionnaire de menu contextuel doit créer un processus, il crée normalement une console. La définition de l’indicateur CMIC_MASK_NO_CONSOLE supprime la création d’une console.

CMIC_MASK_FLAG_SEP_VDM

Cet indicateur est valide uniquement lorsqu’il fait référence à une application Windows 16 bits. S’il est défini, l’application vers laquelle le raccourci pointe s’exécute dans une machine virtuelle DOS privée (VDM). Consultez la section Notes.

CMIC_MASK_ASYNCOK

L’implémentation de IContextMenu ::InvokeCommand peut être dérivée d’un nouveau thread ou d’un nouveau processus pour gérer l’appel et n’a pas besoin de bloquer à l’achèvement de la fonction appelée. Par exemple, si le verbe est « supprimer », l’appel IContextMenu ::InvokeCommand peut retourner avant que tous les éléments aient été supprimés. Étant donné qu’il s’agit d’un avis, les applications appelantes qui spécifient cet indicateur ne peuvent pas garantir que cette demande sera respectée si elles ne sont pas familiarisées avec l’implémentation du verbe qu’elles appellent.

CMIC_MASK_NOASYNC

Windows Vista et versions ultérieures. L’implémentation de IContextMenu ::InvokeCommand doit être synchrone et ne doit pas être retournée avant d’être terminée. Étant donné que cela est recommandé, les applications appelantes qui spécifient cet indicateur ne peuvent pas garantir que cette requête sera respectée si elles ne sont pas familiarisées avec l’implémentation du verbe qu’elles appellent.

CMIC_MASK_SHIFT_DOWN

La touche Maj est enfoncée. Utilisez cette option au lieu d’interroger l’état actuel du clavier qui a peut-être changé depuis l’appel du verbe.

CMIC_MASK_CONTROL_DOWN

Appuyez sur la touche Ctrl. Utilisez cette option au lieu d’interroger l’état actuel du clavier qui a peut-être changé depuis l’appel du verbe.

CMIC_MASK_FLAG_LOG_USAGE

Indique que l’implémentation de IContextMenu ::InvokeCommand peut vouloir effectuer le suivi de l’élément appelé pour des fonctionnalités telles que le menu « Documents récents ».

CMIC_MASK_NOZONECHECKS

N’effectuez pas de case activée de zone. Cet indicateur permet à ShellExecuteEx de contourner la vérification de zone mise en place par IAttachmentExecute.

CMIC_MASK_PTINVOKE

Utilisé uniquement lorsque pici pointe vers une structure CMINVOKECOMMANDINFOEX . Le membre ptInvoke est valide.

lParam

Type : LPARAM

Pointeur vers une chaîne terminée par null qui contient des arguments supplémentaires pour la commande de menu sélectionnée. Ce membre peut être NULL.

idCmdFirst

Type : UINT

Valeur minimale que le gestionnaire peut spécifier pour un identificateur d’élément de menu.

idDefMax

Type : UINT

Valeur maximale que le gestionnaire peut spécifier pour un identificateur d’élément de menu.

pici

Type : LPCMINVOKECOMMANDINFO

Pointeur vers une structure CMINVOKECOMMANDINFO ou CMINVOKECOMMANDINFO .

punkSite

Type : IUnknown*

Pointeur vers le site du gestionnaire de menu contextuel.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
En-tête shlobj_core.h (inclure Shlobj.h)