CRegKey::SetValue

更新 : 2007 年 11 月

m_hKey の指定された値フィールドにデータを格納します。以前のバージョンのこのメソッドはサポートされず、ATL_DEPRECATED のマークが付いています。

LONG SetValue(
   LPCTSTR pszValueName,
   DWORD dwType,
   const void* pValue,
   ULONG nBytes 
) throw( );
static LONG WINAPI SetValue(
   HKEY hKeyParent,
   LPCTSTR lpszKeyName,
   LPCTSTR lpszValue,
   LPCTSTR lpszValueName = NULL);
ATL_DEPRECATED LONG SetValue(
     DWORD dwValue,
   LPCTSTR lpszValueName 
);
ATL_DEPRECATED LONG SetValue(
   LPCTSTR lpszValue,
   LPCTSTR lpszValueName = NULL,
   bool bMulti = false,
   int nValueLen = -1
);

パラメータ

  • pszValueName
    設定する値の名前を含む文字列を指すポインタ。この名前の値がキーに設定されていないと、メソッドはキーにこの名前を加えます。pszValueName が NULL または空の文字列 "" の場合、キーの無名の値または既定の値に型とデータを設定します。

  • dwType
    パラメータ pValue が指すデータの型を示すコードを指定します。

  • pValue
    指定された値名で格納されるデータを保持するバッファへのポインタ。

  • nBytes
    パラメータ pValue が指す情報のバイト単位のサイズを指定します。データの型が、REG_SZ、REG_EXPAND_SZ、または REG_MULTI_SZ である場合、nBytes には終端の NULL 文字を含めたサイズを設定する必要があります。

  • hKeyParent
    開かれたキーのハンドルです。

  • lpszKeyName
    作成するキーまたは開くキーの名前を指定します。名前には、hKeyParent のサブキーを指定する必要があります。

  • lpszValue
    格納するデータを指定します。このパラメータは、NULL 以外の値にする必要があります。

  • lpszValueName
    設定される値フィールドを指定します。この名前の値フィールドがキーに存在しない場合は、追加されます。

  • dwValue
    格納するデータを指定します。

  • bMulti
    false の場合は、文字列が REG_SZ 型であることを示します。true の場合は、文字列が REG_MULTI_SZ 型の複数文字列であることを示します。

  • nValueLen
    bMulti が true の場合、nValueLen は文字列 lpszValue の長さを文字数で表したものです。bMulti が false の場合、-1 を指定するとメソッドは自動的に長さを計算します。

戻り値

処理が正常に行われた場合は、ERROR_SUCCESS を返します。それ以外の場合は、WINERROR.H で定義された 0 以外のエラー コードを返します。

解説

SetValue の元の 2 形式は ATL_DEPRECATED とマークされます。今後は使用できません。これらの形式が使われると、コンパイラは警告メッセージを表示します。

3 番目のメソッドは RegSetValueEx を呼び出します。

必要条件

ヘッダー : atlbase.h

参照

参照

CRegKey クラス

CRegKey::SetKeyValue

CRegKey::QueryValue

Registry Value Types

その他の技術情報

CRegKey のメンバ