VariantCopyInd

コピー先の variant を解放し、コピー元の variant のコピーを作成する。コピー元が VT_BYREF として指定されている場合は必要な間接参照を行う。

VariantCopyInd pvarDest, pvargSrc

pvarDest : [var] コピー先の variant。
pvargSrc : [var] コピー元の variant。

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

解説

コピー先の variant を解放し、コピー元の variant のコピーを作成する。コピー元が VT_BYREF
として指定されている場合は必要な間接参照を行う。

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

[備考]
この関数は、variant のコピーが必要であり、かつ IDispatch::Invoke の実装で引数を扱う時など、それが
VT_BYREF でないことを保証したい場合に有用である。例えば、ソースが (VT_BYREF | VT_I2) の場合、変換先は
BYVAL | VT_I2 となる。VT_VARIANT を含むすべての有効な VT_BYREF
の組み合わせについて同様である。pvargSrc が (VT_BYREF | VT_VARIANT) であり、含まれる variant が
VT_BYREF である場合、含まれる variant も逆参照される。この関数は pvarDest の既存の内容をすべて解放する。

情報

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