다음을 통해 공유


CSettingsStore 클래스

Windows API 함수를 래핑하여 레지스트리에 액세스하는 데 사용할 수 있는 개체 지향 인터페이스를 제공합니다.

구문

class CSettingsStore : public CObject

멤버

공용 생성자

속성 설명
CSettingsStore::CSettingsStore CSettingsStore 개체를 생성합니다.

공용 메서드

이름 설명
CSettingsStore::Close 열린 레지스트리 키를 닫습니다.
CSettingsStore::CreateKey 지정한 키를 열거나 키가 없으면 만듭니다.
CSettingsStore::D eleteKey 지정된 키와 모든 자식을 삭제합니다.
CSettingsStore::D eleteValue 열린 키의 지정된 값을 삭제합니다.
CSettingsStore::Open 지정된 키를 엽니다.
CSettingsStore::읽기 지정된 키 값에 대한 데이터를 검색합니다.
CSettingsStore::Write 열려 있는 키 아래의 레지스트리에 값을 씁니다.

설명

멤버 함수는 CreateKey Open 매우 유사합니다. 레지스트리 키가 이미 있는 CreateKey Open 경우 동일한 방식으로 작동합니다. 그러나 레지스트리 키가 없는 CreateKey 경우 해당 키가 만들어지는 반면 Open 오류 값은 반환됩니다.

예시

다음 예제에서는 클래스의 Open 및 Read 메서드를 사용하는 방법을 보여 줍니다 CSettingsStore . 이 코드 조각은 도구 설명 데모 샘플일부입니다.

CSettingsStore reg(FALSE, TRUE);
DWORD dwEnableBalloonTips = 1;

if (reg.Open(_T("Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced")) &&
    reg.Read(_T("EnableBalloonTips"), dwEnableBalloonTips))
{
   return dwEnableBalloonTips == 1;
}

상속 계층 구조

CObject

CSettingsStore

요구 사항

헤더: afxsettingsstore.h

CSettingsStore::Close

열린 레지스트리 키를 닫습니다.

virtual void Close();

설명

기본적으로 이 메서드는 CSettingsStore 클래스소멸자에서 호출됩니다.

CSettingsStore::CreateKey

레지스트리 키를 열거나 레지스트리 키가 없는 경우 만듭니다.

virtual BOOL CreateKey(LPCTSTR pszPath);

매개 변수

pszPath
[in] 만들거나 열 키의 이름을 지정합니다.

Return Value

성공하면 0, 그렇지 않으면 0이 아닌 값입니다.

설명

CreateKey 은 레지스트리 문의의 루트로 사용됩니다 m_hKey . pszPath의 하위 키m_hKey로 검색합니다. 키가 없 CreateKey 으면 키를 만듭니다. 그렇지 않으면 키가 열립니다. CreateKey 그런 다음 생성되거나 열린 키로 설정합니다 m_hKey .

CSettingsStore::CSettingsStore

CSettngsStore 개체를 만듭니다.

CSettingsStore(
    BOOL bAdmin,
    BOOL bReadOnly);

매개 변수

bAdmin
[in] 개체가 관리자 모드에서 동작하는지 여부를 CSettingsStore 지정하는 부울 매개 변수입니다.

bReadOnly
[in] 개체가 읽기 전용 모드에서 생성되는지 여부를 CSettingsStore 지정하는 부울 매개 변수입니다.

설명

bAdmin이 TRUE로 설정되면 멤버 변수가 m_hKey HKEY_LOCAL_MACHINE 설정됩니다. bAdmin을 FALSE m_hKey 로 설정하면 HKEY_CURRENT_USER 설정됩니다.

보안 액세스는 bReadOnly 매개 변수에 따라 달라집니다. bReadonly가 FALSE이면 보안 액세스가 KEY_ALL_ACCESS 설정됩니다. bReadyOnly가 TRUE이면 보안 액세스는 KEY_QUERY_VALUE, KEY_NOTIFY 및 KEY_ENUMERATE_SUB_KEYS 조합으로 설정됩니다. 레지스트리와 함께 보안 액세스에 대한 자세한 내용은 레지스트리 키 보안 및 액세스 권한을 참조 하세요.

자동으로 릴리스에 대한 CSettingsStore 소멸자입니다 m_hKey .

CSettingsStore::D eleteKey

레지스트리에서 키와 모든 자식을 삭제합니다.

virtual BOOL DeleteKey(
    LPCTSTR pszPath,
    BOOL bAdmin = FALSE);

매개 변수

pszPath
[in] 삭제할 키의 이름입니다.

bAdmin
[in] 삭제할 키의 위치를 지정하는 스위치입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

개체가 읽기 전용 모드인 CSettingsStore 경우 이 메서드는 실패합니다.

매개 변수 bAdmin이 0 DeleteKey 이면 HKEY_CURRENT_USER 아래에서 삭제할 키를 검색합니다. bAdmin이 0 DeleteKey 이 아닌 경우 HKEY_LOCAL_MACHINE 아래에서 삭제할 키를 검색합니다.

CSettingsStore::D eleteValue

에서 값을 m_hKey삭제합니다.

virtual BOOL DeleteValue(LPCTSTR pszValue);

매개 변수

pszValue
[in] 제거할 값 필드를 지정합니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

CSettingsStore::Open

레지스트리 키를 엽니다.

virtual BOOL Open(LPCTSTR pszPath);

매개 변수

pszPath
[in] 레지스트리 키의 이름입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

이 메서드가 지정된 키를 성공적으로 열면 이 키의 핸들로 설정 m_hKey 됩니다.

CSettingsStore::읽기

레지스트리의 키에서 값을 읽습니다.

virtual BOOL Read(
    LPCTSTR pszKey,
    int& iVal);

virtual BOOL Read(
    LPCTSTR pszKey,
    DWORD& dwVal);

virtual BOOL Read(
    LPCTSTR pszKey,
    CString& sVal);

virtual BOOL Read(
    LPCTSTR pszKey,
    CStringList& scStringList);

virtual BOOL Read(
    LPCTSTR pszKey,
    CStringArray& scArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    CDWordArray& dwcArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    CWordArray& wcArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    CByteArray& bcArray);

virtual BOOL Read(
    LPCTSTR pszKey,
    LPPOINT& lpPoint);

virtual BOOL Read(
    LPCTSTR pszKey,
    CRect& rect);

virtual BOOL Read(
    LPCTSTR pszKey,
    BYTE** ppData,
    UINT* pBytes);

virtual BOOL Read(
    LPCTSTR pszKey,
    CObList& list);

virtual BOOL Read(
    LPCTSTR pszKey,
    CObject& obj);

virtual BOOL Read(
    LPCTSTR pszKey,
    CObject*& pObj);

매개 변수

pszKey
[in] 레지스트리에서 읽을 값의 이름을 포함하는 null로 끝나는 문자열에 대한 포인터입니다.

iVal
[out] 레지스트리 키에서 읽은 값을 받는 정수 변수에 대한 참조입니다.

dwVal
[out] 레지스트리 키에서 읽은 값을 받는 32비트 이중 단어 변수에 대한 참조입니다.

sVal
[out] 레지스트리 키에서 읽은 값을 받는 문자열 변수에 대한 참조입니다.

scStringList
[out] 레지스트리 키에서 읽은 값을 받는 문자열 목록 변수에 대한 참조입니다.

scArray
[out] 레지스트리 키에서 읽은 값을 받는 문자열 배열 변수에 대한 참조입니다.

dwcArray
[out] 레지스트리 키에서 읽은 값을 받는 32비트 이중 단어 배열 변수에 대한 참조입니다.

wcArray
[out] 레지스트리 키에서 읽은 값을 받는 16비트 단어 배열 변수에 대한 참조입니다.

bcArray
[out] 레지스트리 키에서 읽은 값을 받는 바이트 배열 변수에 대한 참조입니다.

lpPoint
[out] 레지스트리 키에서 읽은 값을 받는 구조체에 대한 포인터 POINT 에 대한 참조입니다.

rect
[out] 레지스트리 키에서 읽은 값을 받는 CRect 변수에 대한 참조입니다.

ppData
[out] 레지스트리 키에서 읽은 값을 받는 데이터에 대한 포인터에 대한 포인터입니다.

pBytes
[out] 부호 없는 정수 변수에 대한 포인터입니다. 이 변수는 ppData가리키는 버퍼의 크기를 받습니다.

목록
[out] 레지스트리 키에서 읽은 값을 받는 CObList 변수에 대한 참조입니다.

obj
[out] 레지스트리 키에서 읽은 값을 받는 CObject 변수에 대한 참조입니다.

pObj
[out] 레지스트리 키에서 읽은 값을 받는 변수에 대한 포인터 CObject 에 대한 참조입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

Read의 하위 키m_hKey로 pszKey를 확인합니다.

CSettingsStore::Write

열려 있는 키 아래의 레지스트리에 값을 씁니다.

virtual BOOL Write(
    LPCTSTR pszKey,
    int iVal);

virtual BOOL Write(
    LPCTSTR pszKey,
    DWORD dwVal);

virtual BOOL Write(
    LPCTSTR pszKey,
    LPCTSTR pszVal);

virtual BOOL Write(
    LPCTSTR pszKey,
    CStringList& scStringList);

virtual BOOL Write(
    LPCTSTR pszKey,
    CByteArray& bcArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    CStringArray& scArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    CDWordArray& dwcArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    CWordArray& wcArray);

virtual BOOL Write(
    LPCTSTR pszKey,
    const CRect& rect);

virtual BOOL Write(
    LPCTSTR pszKey,
    LPPOINT& lpPoint);

virtual BOOL Write(
    LPCTSTR pszKey,
    LPBYTE pData,
    UINT nBytes);

virtual BOOL Write(
    LPCTSTR pszKey,
    CObList& list);

virtual BOOL Write(
    LPCTSTR pszKey,
    CObject& obj);

virtual BOOL Write(
    LPCTSTR pszKey,
    CObject* pObj);

매개 변수

pszKey
[in] 설정할 값의 이름을 포함하는 문자열에 대한 포인터입니다.

iVal
[in] 저장할 데이터가 포함된 정수 변수에 대한 참조입니다.

dwVal
[in] 저장할 데이터가 포함된 32비트 이중 단어 변수에 대한 참조입니다.

pszVal
[in] 저장할 데이터가 포함된 null로 끝나는 문자열 변수에 대한 포인터입니다.

scStringList
[in] 저장할 데이터가 포함된 CStringList 변수에 대한 참조입니다.

bcArray
[in] 저장할 데이터가 포함된 바이트 배열 변수에 대한 참조입니다.

scArray
[in] 저장할 데이터가 포함된 문자열 배열 변수에 대한 참조입니다.

dwcArray
[in] 저장할 데이터가 포함된 32비트 이중 단어 배열 변수에 대한 참조입니다.

wcArray
[in] 저장할 데이터가 포함된 16비트 단어 배열 변수에 대한 참조입니다.

rect
[in] 저장할 데이터가 포함된 CRect 변수에 대한 참조입니다.

lpPoint
[in] 저장할 데이터가 포함된 변수에 대한 POINT 포인터에 대한 참조입니다.

pData
[in] 저장할 데이터가 포함된 버퍼에 대한 포인터입니다.

nBytes
[in] pData 매개 변수가 가리키는 데이터의 크기(바이트)를 지정합니다.

목록
[in] 저장할 데이터가 포함된 CObList 변수에 대한 참조입니다.

obj
[in] 저장할 데이터가 포함된 CObject 변수에 대한 참조입니다.

pObj
[in] 저장할 데이터가 포함된 변수에 대한 CObject 포인터에 대한 포인터입니다.

Return Value

성공하면 TRUE이고, 실패하면 FALSE입니다.

설명

레지스트리에 쓰려면 CSettingsStore 개체를 만들 때 bReadOnly를 0이 아닌 값으로 설정해야 합니다. 자세한 내용은 CSettingsStore::CSettingsStore를 참조 하세요.

참고 항목

계층 구조 차트
클래스
CWinAppEx 클래스