DFM_INVOKECOMMANDEX Nachricht

Wird von der standardmäßigen Kontextmenüimplementierung gesendet, um LPFNDFMCALLBACK zum Aufrufen eines erweiterten Menübefehls anzufordern.

                DFM_INVOKECOMMANDEX
    wParam = (WPARAM)(int) idCmd;           
    lParam = (LPARAM)(DFMICS) PDFMICS;
            

Parameter

idCmd [in]

Die Befehls-ID des ausgewählten Menübefehls. Die folgenden Flags werden erkannt.

DFM_CMD_DELETE

DFM_CMD_MOVE

DFM_CMD_COPY

DFM_CMD_LINK

DFM_CMD_PROPERTIES

Zeigen Sie die Eigenschaften-Benutzeroberfläche für das Element an, für das das Menü aufgerufen wurde.

DFM_CMD_NEWFOLDER

DFM_CMD_PASTE

DFM_CMD_VIEWLIST

DFM_CMD_VIEWDETAILS

DFM_CMD_PASTELINK

DFM_CMD_PASTESPECIAL

DFM_CMD_MODALPROP

DFM_CMD_RENAME

PDFMICS [in]

Ein Zeiger auf eine DFMICS-Struktur , die zusätzliche Argumente für den ausgewählten Menübefehl enthält. Dieser Parameter kann NULL sein.

Bemerkungen

Nach Erhalt dieser Nachricht sollte Ihre Funktion S_FALSE zurückgeben, wenn die Standardimplementierung den Standardhandler für den Befehl aufruft. Geben Sie S_OK zurück, wenn die Nachricht behandelt wurde. Andernfalls wird ein HRESULT-Standardfehlercode zurückgegeben.

Diese Nachricht wird entweder an die Rückruffunktion oder das Rückrufobjekt gesendet, je nachdem, wie der Rückruf implementiert wird. Es gibt zwei APIs für die Rückruferstellung: CDefFolderMenu_Create2 , die einen Zeiger auf eine Rückruffunktion verwendet, oder SHCreateDefaultContextMenu , die ein Rückrufobjekt verwendet, das IContextMenuCB unterstützt.

Die Elemente, für die der Befehl aufgerufen wird, werden in einem Datenobjekt bereitgestellt, das an die Rückruffunktion oder an die IContextMenuCB::CallBack-Methode übergeben wird. Dieses Datenobjekt wird von der Datenquelle bereitgestellt, die den Rückruf implementiert. Um die Elemente aus dem Datenobjekt zu extrahieren, verwenden Sie SHCreateShellItemArrayFromDataObject.

DFM_INVOKECOMMAND ist eine einfachere Version dieser Nachricht, die dem Rückruf nicht so viele Informationen liefert. Verwenden Sie DFM_INVOKECOMMAND , wenn die von DFM_INVOKECOMMANDEX bereitgestellten zusätzlichen Informationen in Ihrer Implementierung nicht benötigt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2008 [nur Desktop-Apps]
Header
Shlobj.h