CRegKey::QueryStringValue
更新 : 2007 年 11 月
指定された値名の文字列データを取得します。
LONG QueryStringValue(
LPCTSTR pszValueName,
LPTSTR pszValue,
ULONG* pnChars
) throw( );
パラメータ
pszValueName
照会する値の名前を含む Null で終わる文字列を指すポインタ。pszValue
文字列データを受け取るバッファへのポインタ。pnChars
pszValue が指すバッファの TCHAR 単位のサイズ。メソッドが戻るとき、取得された文字列の TCHAR 単位のサイズが pnChars に格納されます。終端の NULL 文字も含まれます。
戻り値
メソッドが成功した場合は、ERROR_SUCCESS が返されます。値の読み取りに失敗すると、WINERROR.H で定義されている 0 以外のエラー コードを返します。参照されるデータが REG_SZ 型でない場合は、ERROR_INVALID_DATA を返します。メソッドが ERROR_MORE_DATA を返す場合、pnChars は、必要なバッファ サイズ (バイト数) ではなく、0 になります。
解説
このメソッドは、RegQueryValueEx を使用し、正しい種類のデータが返されたかどうかを確認します。詳細については、RegQueryValueEx の説明を参照してください。
セキュリティに関するメモ : |
---|
呼び出し元では、このメソッドを使用してレジストリの場所を指定できますが、信頼性の低いデータが読み込まれる可能性があります。また、このメソッドが使用する RegQueryValueEx 関数は、NULL で終わる文字列を明示的に処理しません。これらの条件については、呼び出し元のコードで確認する必要があります。 |
必要条件
ヘッダー : atlbase.h
参照
参照
CRegKey::QueryMultiStringValue