SHDoDragDrop

ドラッグ&ドロップ操作を実行する。必要に応じてドラッグソースの生成およびドラッグ画像をサポートする。

SHDoDragDrop hwnd, pdata, pdsrc, dwEffect, pdwEffect

hwnd : [intptr] 型: HWND ドラッグ画像を取得するために使用するウィンドウのハンドル。この値は NULL でもよい。詳細は備考を参照。
pdata : [var] 型: IDataObject* ドラッグされるデータを保持するデータオブジェクトの IDataObject インターフェイスへのポインター。
pdsrc : [var] 型: IDropSource* ドラッグ操作中にソースと通信するために使用される IDropSource インターフェイスの実装へのポインター。
dwEffect : [int] 型: DWORD ドラッグ&ドロップ操作においてソースが許可する効果。最も重要な効果は、ドラッグ&ドロップ操作で移動を許可するかどうかである。指定可能な値の一覧は DROPEFFECT を参照。
pdwEffect : [var] 型: DWORD* ドラッグ&ドロップ操作がソースデータにどう影響したかを示す値へのポインター。pdwEffect パラメーターは操作がキャンセルされなかった場合にのみ設定される。指定可能な値の一覧は DROPEFFECT を参照。

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

解説

ドラッグ&ドロップ操作を実行する。必要に応じてドラッグソースの生成およびドラッグ画像をサポートする。

[戻り値]
型: HRESULT この関数は標準の戻り値 E_OUTOFMEMORY に加え、次の値もサポートする。
(以下省略)

[備考]
Windows Vista 以降では、データオブジェクト pdtobj にドラッグ画像が格納されておらず、かつ hwnd
で指定されたウィンドウからドラッグ画像が取得できない場合、シェルが汎用のドラッグ画像を提供する。指定したウィンドウからドラッグ画像を取得できないのは、hwnd
が NULL であるか、指定したウィンドウが DI_GETDRAGIMAGE メッセージをサポートしていないかのいずれかの場合である。

情報

プラグイン / モジュール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