CDefFolderMenu_Create2

選択された一群のファイルフォルダオブジェクトに対するコンテキストメニューを作成する。

CDefFolderMenu_Create2 pidlFolder, hwnd, cidl, apidl, psf, pfn, nKeys, ahkeys, ppcm

pidlFolder : [var] 型: PCIDLIST_ABSOLUTE 親フォルダの ITEMIDLIST 構造体。この値は NULL でも構わない。
hwnd : [intptr] 型: HWND 親ウィンドウへのハンドル。この値は NULL でも構わない。
cidl : [int] 型: UINT apidl が指す配列内の ITEMIDLIST 構造体の数。
apidl : [var] 型: PCUITEMID_CHILD_ARRAY* 選択された各アイテムに対応する ITEMIDLIST 構造体の配列へのポインタ。
psf : [var] 型: IShellFolder* 親フォルダの IShellFolder インタフェースへのポインタ。この IShellFolder は IDataObject インタフェースをサポートしている必要があり、サポートしていない場合 CDefFolderMenu_Create2 は失敗して E_NOINTERFACE を返す。この値は NULL でも構わない。
pfn : [int] 型: LPFNDFMCALLBACK LPFNDFMCALLBACK コールバックオブジェクト。コールバックオブジェクトが不要な場合は NULL を指定できる。
nKeys : [int] 型: UINT ahkeys が指す配列内のレジストリキーの数。
ahkeys : [intptr] 型: const HKEY* メニュー項目に使用するコンテキストメニューハンドラを指定するレジストリキーの配列へのポインタ。コンテキストメニューハンドラの詳細については「コンテキストメニューハンドラの作成」を参照。この配列には最大 16 個のレジストリキーを格納できる。
ppcm : [var] 型: IContextMenu** 関数が成功して戻る際に、コンテキストメニューを表す IContextMenu オブジェクトを指す IContextMenu インタフェースポインタのアドレス。

(プラグイン / モジュール : shell32.dll)

解説

選択された一群のファイルフォルダオブジェクトに対するコンテキストメニューを作成する。

[戻り値]
型: HRESULT 関数が成功した場合は S_OK を返す。そうでない場合は HRESULT エラーコードを返す。

情報

プラグイン / モジュールshell32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の shell32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_shell32_gen2.hs