ResUtilSetMultiSzValue 関数 (resapi.h)

クラスター データベースに複数の文字列値を設定します。 PRESUTIL_SET_MULTI_SZ_VALUE型は、この関数へのポインターを定義します。

構文

DWORD ResUtilSetMultiSzValue(
  [in]                HKEY    hkeyClusterKey,
  [in]                LPCWSTR pszValueName,
  [in]                LPCWSTR pszNewValue,
  [in]                DWORD   cbNewValueSize,
  [out, optional]     LPWSTR  *ppszOutValue,
  [in, out, optional] LPDWORD pcbOutValueSize
);

パラメーター

[in] hkeyClusterKey

クラスター データベース内の複数の文字列値の場所を識別するキー。

[in] pszValueName

更新する値の名前を含む Null で終わる Unicode 文字列。

[in] pszNewValue

新しい複数の文字列値へのポインター。

[in] cbNewValueSize

新しい値のサイズ。

[out, optional] ppszOutValue

更新された値のコピーを受け取る文字列ポインターへのポインター。 使用する場合、呼び出し元は *ppszOutValue で LocalFree を呼び出す必要があります。

[in, out, optional] pcbOutValueSize

新しい値のサイズを受け取るポインター。

戻り値

操作が成功した場合、関数は ERROR_SUCCESSを返します。

操作が失敗した場合、関数は システム エラー コードを返します。 考えられるエラー コードを次に示します。

リターン コード 説明
ERROR_NOT_ENOUGH_MEMORY
メモリの割り当て中にエラーが発生しました。

注釈

ResUtilSetMultiSzValue ユーティリティ関数は、新しい値にメモリを割り当て、Cluster API 関数 ClusterRegSetValue を呼び出します。

複数の文字列値は、小さくて連続した null で終わる Unicode 文字列を含み、最後の文字列の後に余分な null 文字で終わる大きな文字列です。

メモリ リークを回避するには、必ず *ppszOutValue で LocalFree を呼び出してください。

次のリソース DLL エントリ ポイント関数から ResUtilSetMultiSzValue を呼び出さないでください。

ResUtilSetMultiSzValue は、他のリソース DLL エントリ ポイント関数またはワーカー スレッドから安全に呼び出すことができます。 詳細については、「 リソース DLL での回避する関数呼び出し」を参照してください。

要件

要件 値
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2008 Enterprise、Windows Server 2008 Datacenter
対象プラットフォーム Windows
ヘッダー resapi.h
Library ResUtils.lib
[DLL] ResUtils.dll

こちらもご覧ください

ClusterRegSetValue

ResUtilSetBinaryValue

ResUtilSetDwordValue

ResUtilSetExpandSzValue

ResUtilSetSzValue