Struttura DFMICS (shlobj_core.h)
Contiene argomenti aggiuntivi usati da DFM_INVOKECOMMANDEX.
Sintassi
typedef struct {
DWORD cbSize;
DWORD fMask;
LPARAM lParam;
UINT idCmdFirst;
UINT idDefMax;
LPCMINVOKECOMMANDINFO pici;
IUnknown *punkSite;
} DFMICS, *PDFMICS;
Members
cbSize
Tipo: DWORD
Dimensioni di questa struttura, in byte.
fMask
Tipo: DWORD
Zero o uno o più flag seguenti che specificano come gestire i dati nella struttura CMINVOKECOMMANDINFO o CMINVOKECOMMANDINFOEX a cui punta pici.
CMIC_MASK_HOTKEY
Il membro dwHotKey è valido.
CMIC_MASK_ICON
Non usato.
CMIC_MASK_FLAG_NO_UI
L'implementazione di IContextMenu::InvokeCommand non consente di visualizzare elementi dell'interfaccia utente (ad esempio, messaggi di errore) durante l'esecuzione di un comando.
CMIC_MASK_UNICODE
Usato solo quando pici punta a una struttura CMINVOKECOMMANDINFOEX . Indica che il gestore del menu di scelta rapida deve usare i membri lpVerbW, lpParametersW, lpTitleW e lpDirectoryW anziché i relativi equivalenti ANSI. Poiché alcuni gestori di menu di scelta rapida potrebbero non supportare Unicode, è necessario passare anche stringhe ANSI valide nei membri lpVerb, lpParameters, lpTitleW e lpDirectory .
CMIC_MASK_NO_CONSOLE
Se un gestore di menu di scelta rapida deve creare un nuovo processo, in genere crea una nuova console. L'impostazione del flag di CMIC_MASK_NO_CONSOLE elimina la creazione di una nuova console.
CMIC_MASK_FLAG_SEP_VDM
Questo flag è valido solo quando si fa riferimento a un'applicazione basata su Windows a 16 bit. Se impostato, l'applicazione a cui punta il collegamento da eseguire in una macchina virtuale virtuale privata (VDM). Vedere la sezione Osservazioni.
CMIC_MASK_ASYNCOK
L'implementazione di IContextMenu::InvokeCommand può attivare un nuovo thread o un processo per gestire la chiamata e non deve bloccare il completamento della funzione richiamata. Ad esempio, se il verbo è "delete" la chiamata IContextMenu::InvokeCommand può restituire prima che tutti gli elementi siano stati eliminati. Poiché si tratta di un avviso, la chiamata di applicazioni che specificano questo flag non può garantire che questa richiesta venga rispettata se non hanno familiarità con l'implementazione del verbo che richiamano.
CMIC_MASK_NOASYNC
Windows Vista e versioni successive. L'implementazione di IContextMenu::InvokeCommand deve essere sincrona, non restituita prima del completamento. Poiché è consigliabile, la chiamata di applicazioni che specificano questo flag non può garantire che questa richiesta venga rispettata se non hanno familiarità con l'implementazione del verbo che richiamano.
CMIC_MASK_SHIFT_DOWN
Il tasto MAIUSC viene premuto. Usare questa opzione anziché eseguire il polling dello stato corrente della tastiera che potrebbe essere stata modificata dopo che il verbo è stato richiamato.
CMIC_MASK_CONTROL_DOWN
Il tasto CTRL viene premuto. Usare questa opzione anziché eseguire il polling dello stato corrente della tastiera che potrebbe essere stata modificata dopo che il verbo è stato richiamato.
CMIC_MASK_FLAG_LOG_USAGE
Indica che l'implementazione di IContextMenu::InvokeCommand potrebbe voler tenere traccia dell'elemento richiamato per le funzionalità come il menu "Documenti recenti".
CMIC_MASK_NOZONECHECKS
Non eseguire un controllo della zona. Questo flag consente a ShellExecuteEx di ignorare il controllo della zona inserito da IAttachmentExecute.
CMIC_MASK_PTINVOKE
Usato solo quando pici punta a una struttura CMINVOKECOMMANDINFOEX . Il membro ptInvoke è valido.
lParam
Tipo: LPARAM
Puntatore a una stringa con terminazione null contenente argomenti aggiuntivi al comando di menu selezionato. Questo membro può essere NULL.
idCmdFirst
Tipo: UINT
Valore minimo che il gestore può specificare per un identificatore di voce di menu.
idDefMax
Tipo: UINT
Valore massimo che il gestore può specificare per un identificatore di voce di menu.
pici
Tipo: LPCMINVOKECOMMANDINFO
Puntatore a una struttura CMINVOKECOMMANDINFO o CMINVOKECOMMANDINFO .
punkSite
Tipo: IUnknown*
Puntatore al sito del gestore del menu di scelta rapida.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Intestazione | shlobj_core.h (include Shlobj.h) |