Klasa CSettingsStore
Opakowuje funkcje interfejsu API systemu Windows, udostępniając interfejs obiektowy używany do uzyskiwania dostępu do rejestru.
Składnia
class CSettingsStore : public CObject
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CSettingsStore::CSettingsStore | CSettingsStore Tworzy obiekt. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CSettingsStore::Close | Zamyka otwarty klucz rejestru. |
CSettingsStore::CreateKey | Otwiera określony klucz lub tworzy go, jeśli nie istnieje. |
CSettingsStore::D eleteKey | Usuwa określony klucz i wszystkie jego elementy podrzędne. |
CSettingsStore::D eleteValue | Usuwa określoną wartość otwartego klucza. |
CSettingsStore::Open | Otwiera określony klucz. |
CSettingsStore::Read | Pobiera dane dla określonej wartości klucza. |
CSettingsStore::Write | Zapisuje wartość w rejestrze pod otwartym kluczem. |
Uwagi
Funkcje CreateKey
składowe i Open
są bardzo podobne. Jeśli klucz rejestru już istnieje i CreateKey
Open
działa w ten sam sposób. Jeśli jednak klucz rejestru nie istnieje, zostanie utworzony, CreateKey
podczas gdy Open
zwróci wartość błędu.
Przykład
W poniższym przykładzie pokazano, jak używać metod CSettingsStore
Open i Read klasy . Ten fragment kodu jest częścią przykładu Pokaz porad narzędzia.
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;
}
Hierarchia dziedziczenia
CSettingsStore
Wymagania
Nagłówek: afxsettingsstore.h
CSettingsStore::Close
Zamyka otwarty klucz rejestru.
virtual void Close();
Uwagi
Domyślnie ta metoda jest wywoływana z destruktora klasy CSettingsStore.
CSettingsStore::CreateKey
Otwiera klucz rejestru lub tworzy go, jeśli nie istnieje.
virtual BOOL CreateKey(LPCTSTR pszPath);
Parametry
pszPath
[in] Określa nazwę klucza, który ma zostać utworzony lub otwarty.
Wartość zwracana
0 w przypadku powodzenia; w przeciwnym razie wartość niezerowa.
Uwagi
CreateKey
używa m_hKey
jako katalogu głównego zapytań rejestru. Wyszukuje ciąg pszPath jako podklucz .m_hKey
Jeśli klucz nie istnieje, CreateKey
tworzy go. W przeciwnym razie zostanie otwarty klucz. CreateKey
następnie ustawia m_hKey
wartość utworzonego lub otwartego klucza.
CSettingsStore::CSettingsStore
Tworzy obiekt CSettngsStore
.
CSettingsStore(
BOOL bAdmin,
BOOL bReadOnly);
Parametry
bAdmin
[in] Parametr logiczny określający, czy CSettingsStore
obiekt działa w trybie administratora.
bReadOnly
[in] Parametr logiczny określający, czy CSettingsStore
obiekt jest tworzony w trybie tylko do odczytu.
Uwagi
Jeśli parametr bAdmin ma wartość TRUE, zmienna m_hKey
składowa jest ustawiona na HKEY_LOCAL_MACHINE. Jeśli ustawisz wartość bAdmin na FAŁSZ, m_hKey
zostanie ustawiona wartość HKEY_CURRENT_USER.
Dostęp do zabezpieczeń zależy od parametru bReadOnly . Jeśli wartość bReadonly ma wartość FALSE, dostęp zabezpieczeń zostanie ustawiony na KEY_ALL_ACCESS. Jeśli parametr bReadyOnly ma wartość TRUE, dostęp zabezpieczeń zostanie ustawiony na kombinację KEY_QUERY_VALUE, KEY_NOTIFY i KEY_ENUMERATE_SUB_KEYS. Aby uzyskać więcej informacji na temat dostępu zabezpieczeń razem z rejestrem, zobacz Zabezpieczenia klucza rejestru i prawa dostępu.
Destruktor dla CSettingsStore
wydań m_hKey
jest automatycznie.
CSettingsStore::D eleteKey
Usuwa klucz i wszystkie jego elementy podrzędne z rejestru.
virtual BOOL DeleteKey(
LPCTSTR pszPath,
BOOL bAdmin = FALSE);
Parametry
pszPath
[in] Nazwa klucza do usunięcia.
bAdmin
[in] Przełącznik określający lokalizację klucza do usunięcia.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.
Uwagi
Ta metoda zakończy się niepowodzeniem CSettingsStore
, jeśli obiekt jest w trybie tylko do odczytu.
Jeśli parametr bAdmin ma wartość zero, DeleteKey
wyszukuje klucz do usunięcia w HKEY_CURRENT_USER. Jeśli bAdmin nie jestzero, DeleteKey
wyszukuje klucz do usunięcia w HKEY_LOCAL_MACHINE.
CSettingsStore::D eleteValue
Usuwa wartość z m_hKey
.
virtual BOOL DeleteValue(LPCTSTR pszValue);
Parametry
pszValue
[in] Określa pole wartości do usunięcia.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.
CSettingsStore::Open
Otwiera klucz rejestru.
virtual BOOL Open(LPCTSTR pszPath);
Parametry
pszPath
[in] Nazwa klucza rejestru.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.
Uwagi
Po pomyślnym otworzie określonego klucza ta metoda zostanie ustawiona m_hKey
na uchwyt tego klucza.
CSettingsStore::Read
Odczytuje wartość z klucza w rejestrze.
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);
Parametry
pszKey
[in] Wskaźnik do ciągu zakończonego wartości null, który zawiera nazwę wartości do odczytu z rejestru.
iVal
[out] Odwołanie do zmiennej całkowitej, która odbiera wartość odczytaną z klucza rejestru.
dwVal
[out] Odwołanie do 32-bitowej zmiennej podwójnego słowa, która odbiera wartość odczytaną z klucza rejestru.
sVal
[out] Odwołanie do zmiennej ciągu, która odbiera wartość odczytaną z klucza rejestru.
scStringList
[out] Odwołanie do zmiennej listy ciągów, która odbiera wartość odczytaną z klucza rejestru.
scArray
[out] Odwołanie do zmiennej tablicy ciągów, która odbiera wartość odczytaną z klucza rejestru.
dwcArray
[out] Odwołanie do 32-bitowej zmiennej tablicy słów, która odbiera wartość odczytaną z klucza rejestru.
wcArray
[out] Odwołanie do 16-bitowej zmiennej tablicy wyrazów, która odbiera wartość odczytaną z klucza rejestru.
bcArray
[out] Odwołanie do zmiennej tablicy bajtów, która odbiera wartość odczytaną z klucza rejestru.
lpPoint
[out] Odwołanie do wskaźnika do POINT
struktury, która odbiera wartość odczytaną z klucza rejestru.
Rect
[out] Odwołanie do zmiennej CRect , która odbiera wartość odczytaną z klucza rejestru.
ppData
[out] Wskaźnik do wskaźnika do danych, które odbiera wartość odczytaną z klucza rejestru.
Liczba bajtów pBytes
[out] Wskaźnik do niepodpisanej zmiennej całkowitej. Ta zmienna odbiera rozmiar buforu, do którego wskazuje ppData .
lista
[out] Odwołanie do zmiennej CObList , która odbiera wartość odczytaną z klucza rejestru.
Obj
[out] Odwołanie do zmiennej CObject , która odbiera wartość odczytaną z klucza rejestru.
pObj
[out] Odwołanie do wskaźnika do zmiennej CObject
, która odbiera wartość odczytaną z klucza rejestru.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.
Uwagi
Read
sprawdza wartość pszKey jako podklucz .m_hKey
CSettingsStore::Write
Zapisuje wartość w rejestrze pod otwartym kluczem.
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);
Parametry
pszKey
[in] Wskaźnik do ciągu, który zawiera nazwę wartości do ustawienia.
iVal
[in] Odwołanie do zmiennej całkowitej zawierającej dane do przechowywania.
dwVal
[in] Odwołanie do 32-bitowej zmiennej podwójnego słowa zawierającej dane do przechowywania.
pszVal
[in] Wskaźnik do zmiennej ciągu zakończonej wartością null, która zawiera dane do przechowywania.
scStringList
[in] Odwołanie do zmiennej CStringList zawierającej dane do przechowywania.
bcArray
[in] Odwołanie do zmiennej tablicy bajtów zawierającej dane do przechowywania.
scArray
[in] Odwołanie do zmiennej tablicy ciągów zawierającej dane do przechowywania.
dwcArray
[in] Odwołanie do 32-bitowej zmiennej tablicy wyrazów zawierającej dane do przechowywania.
wcArray
[in] Odwołanie do 16-bitowej zmiennej tablicy wyrazów zawierającej dane do przechowywania.
Rect
[in] Odwołanie do zmiennej CRect zawierającej dane do przechowywania.
lpPoint
[in] Odwołanie do wskaźnika do zmiennej POINT
zawierającej dane do przechowywania.
pData
[in] Wskaźnik do buforu zawierającego dane do przechowywania.
nBajty
[in] Określa rozmiar w bajtach danych, do których wskazuje parametr pData .
lista
[in] Odwołanie do zmiennej CObList zawierającej dane do przechowywania.
Obj
[in] Odwołanie do zmiennej CObject zawierającej dane do przechowywania.
pObj
[in] Wskaźnik do wskaźnika do CObject
zmiennej zawierającej dane do przechowywania.
Wartość zwracana
Wartość TRUE, jeśli operacja zakończyła się pomyślnie; w przeciwnym razie FAŁSZ.
Uwagi
Aby zapisać w rejestrze, należy ustawić wartość bReadOnly na wartość niezerową podczas tworzenia obiektu CSettingsStore . Aby uzyskać więcej informacji, zobacz CSettingsStore::CSettingsStore.