OleCreateLinkFromData

クリップボードから取得したもの、または OLE ドラッグアンドドロップ操作の一部として取得したデータ転送オブジェクトからリンクオブジェクトを作成する。

OleCreateLinkFromData pSrcDataObj, riid, renderopt, pFormatEtc, pClientSite, pStg, ppvObj

pSrcDataObj : [var] リンクオブジェクトを作成する元となるデータ転送オブジェクト上の IDataObject インターフェイスへのポインタ。
riid : [var] 呼び出し側が後に新しいオブジェクトと通信するために使用するインターフェイスの識別子への参照(通常は IID_IOleObject で、これは OLE ヘッダで IOleObject のインターフェイス識別子として定義されている)。
renderopt : [int] 新しく作成されるオブジェクトが持つローカルキャッシュによる描画またはデータ取得機能を示す OLERENDER 列挙の値。追加の考慮事項については後述の「備考」を参照。
pFormatEtc : [var] 新しく作成されるオブジェクトが持つローカルキャッシュによる描画またはデータ取得機能を示す OLERENDER 列挙値へのポインタ。選択された OLERENDER 値は pFormatEtc パラメータの取り得る値に影響する。
pClientSite : [var] オブジェクトがコンテナからサービスを要求するための主要インターフェイスである IOleClientSite のインスタンスへのポインタ。このパラメータには NULL を指定できる。
pStg : [var] ストレージオブジェクト上の IStorage インターフェイスへのポインタ。このパラメータに NULL を指定することはできない。
ppvObj : [var] riid で要求したインターフェイスポインタを受け取るポインタ変数のアドレス。正常終了した場合、ppvObj には新しく作成されたオブジェクト上の要求されたインターフェイスポインタが格納される。

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

解説

クリップボードから取得したもの、または OLE
ドラッグアンドドロップ操作の一部として取得したデータ転送オブジェクトからリンクオブジェクトを作成する。

[戻り値]
この関数は成功時に S_OK を返す。その他の戻り値には以下が含まれる。
(以下省略)

[備考]
OleCreateLinkFromData 関数は、ペーストリンクまたはドラッグリンク操作の実装に使用される。その動作は
OleCreateFromData
関数とよく似ているが、リンクを作成する点と、異なるデータ形式を探す点が異なる。CF_LINKSOURCE
形式が存在せず、かつデータ転送オブジェクトに FileName または FileNameW
クリップボード形式のいずれかが存在する場合、OleCreateLinkFromData
は指定されたファイルへのリンクを含むパッケージを作成する。
renderopt および pFormatetc
パラメータを使用して、新しく作成されるオブジェクトのキャッシュ機能を制御する。何をキャッシュするかを決定する方法に関する一般的な情報は、renderopt
と pFormatetc の相互作用の説明については OLERENDER 列挙を参照。ただし、これらのパラメータが
OleCreateLinkFromData のキャッシュ初期化方法に及ぼす具体的な影響がいくつかある。
(以下省略)

情報

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