다음을 통해 공유


DFMICS 구조체(shlobj_core.h)

DFM_INVOKECOMMANDEX 사용하는 추가 인수를 포함합니다.

구문

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

멤버

cbSize

형식:DWORD

이 구조체의 크기(바이트)입니다.

fMask

형식:DWORD

pici가 가리키는 CMINVOKECOMMANDINFO 또는 CMINVOKECOMMANDINFOEX 구조체에서 데이터를 처리하는 방법을 지정하는 다음 플래그 중 하나 이상 또는 0개 이상입니다.

CMIC_MASK_HOTKEY

dwHotKey 멤버가 유효합니다.

CMIC_MASK_ICON

사용되지 않습니다.

CMIC_MASK_FLAG_NO_UI

IContextMenu::InvokeCommand의 구현은 명령을 수행하는 동안 사용자 인터페이스 요소(예: 오류 메시지)를 표시할 수 없습니다.

CMIC_MASK_UNICODE

piciCMINVOKECOMMANDINFOEX 구조를 가리키는 경우에만 사용됩니다. 바로 가기 메뉴 처리기가 ANSI에 해당하는 멤버 대신 lpVerbW, lpParametersW, lpTitleWlpDirectoryW 멤버를 사용해야 했음을 나타냅니다. 일부 바로 가기 메뉴 처리기는 유니코드를 지원하지 않을 수 있으므로 lpVerb, lpParameters, lpTitleWlpDirectory 멤버에도 유효한 ANSI 문자열을 전달해야 합니다.

CMIC_MASK_NO_CONSOLE

바로 가기 메뉴 처리기가 새 프로세스를 만들어야 하는 경우 일반적으로 새 콘솔을 만듭니다. CMIC_MASK_NO_CONSOLE 플래그를 설정하면 새 콘솔을 만들지 않습니다.

CMIC_MASK_FLAG_SEP_VDM

이 플래그는 16비트 Windows 기반 애플리케이션을 참조할 때만 유효합니다. 설정된 경우 바로 가기가 가리키는 애플리케이션이 프라이빗 VDM(Virtual DOS Machine)에서 실행됩니다. 설명 부분을 참조하세요.

CMIC_MASK_ASYNCOK

IContextMenu::InvokeCommand의 구현은 호출을 처리하기 위해 새 스레드 또는 프로세스를 스핀오프할 수 있으며 호출되는 함수가 완료될 때 차단할 필요가 없습니다. 예를 들어 동사가 "삭제"인 경우 IContextMenu::InvokeCommand 호출은 모든 항목이 삭제되기 전에 반환할 수 있습니다. 이는 권고이므로 이 플래그를 지정하는 애플리케이션을 호출해도 호출하는 동사의 구현에 익숙하지 않은 경우 이 요청이 적용되도록 보장할 수 없습니다.

CMIC_MASK_NOASYNC

Windows Vista 이상. IContextMenu::InvokeCommand의 구현은 완료되기 전에 반환되지 않고 동기적이어야 합니다. 권장되므로 이 플래그를 지정하는 애플리케이션을 호출해도 호출하는 동사의 구현에 익숙하지 않은 경우 이 요청이 적용되도록 보장할 수 없습니다.

CMIC_MASK_SHIFT_DOWN

SHIFT 키를 눌렀습니다. 동사가 호출된 이후 변경되었을 수 있는 키보드의 현재 상태를 폴링하는 대신 사용합니다.

CMIC_MASK_CONTROL_DOWN

Ctrl 키를 누릅니다. 동사가 호출된 이후 변경되었을 수 있는 키보드의 현재 상태를 폴링하는 대신 사용합니다.

CMIC_MASK_FLAG_LOG_USAGE

IContextMenu::InvokeCommand의 구현이 "최근 문서" 메뉴와 같은 기능에 대해 호출되는 항목을 추적하려고 할 수 있음을 나타냅니다.

CMIC_MASK_NOZONECHECKS

영역 검사 수행하지 마세요. 이 플래그를 사용하면 ShellExecuteExIAttachmentExecute에 의해 배치된 영역 검사를 무시할 수 있습니다.

CMIC_MASK_PTINVOKE

piciCMINVOKECOMMANDINFOEX 구조를 가리키는 경우에만 사용됩니다. ptInvoke 멤버가 유효합니다.

lParam

형식: LPARAM

선택한 메뉴 명령에 대한 추가 인수를 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 이 멤버는 NULL일 수 있습니다.

idCmdFirst

형식: UINT

처리기가 메뉴 항목 식별자에 대해 지정할 수 있는 최소값입니다.

idDefMax

형식: UINT

처리기가 메뉴 항목 식별자에 대해 지정할 수 있는 최대값입니다.

pici

형식: LPCMINVOKECOMMANDINFO

CMINVOKECOMMANDINFO 또는 CMINVOKECOMMANDINFO 구조체에 대한 포인터입니다.

punkSite

형식: IUnknown*

상황에 맞는 메뉴 처리기의 사이트에 대한 포인터입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
머리글 shlobj_core.h(Shlobj.h 포함)