SafeArrayPutElement

指定された位置にデータ要素を格納する。

SafeArrayPutElement psa, rgIndices, pv

psa : [var] SafeArrayCreate で作成された配列ディスクリプタ。
rgIndices : [var] 配列の各次元のインデックスのベクタ。最も右の (最下位の) 次元が rgIndices[0] である。最も左の次元は rgIndices[psa->cDims ? 1] に格納される。
pv : [intptr] 配列に代入するデータ。variant 型 VT_DISPATCH、VT_UNKNOWN、VT_BSTR はポインタであり、もう 1 段階の間接参照を必要としない。

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

解説

指定された位置にデータ要素を格納する。

[戻り値]
この関数は次のいずれかの値を返すことがある。
(以下省略)

[備考]
この関数は要素を代入する前後に SafeArrayLockSafeArrayUnlock
を自動的に呼び出す。データ要素が文字列、オブジェクト、または variant の場合、関数は safe array
が破棄される時にそれを正しくコピーする。既存の要素が文字列、オブジェクト、または variant の場合は正しくクリアされる。データ要素が
VT_DISPATCH または VT_UNKNOWN の場合、AddRef
が呼ばれてオブジェクトの参照カウントがインクリメントされる。注意:
配列には複数のロックを掛けることができる。配列が他の操作によってロックされている間も要素を配列に挿入できる。SafeArrayPutElement
の呼び出し例は、COM Fundamentals Lines サンプル (Lines.cpp の CLines::Add) を参照。

情報

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