Bagikan melalui


Kelas CSettingsStore

Membungkus fungsi Windows API, menyediakan antarmuka berorientasi objek yang Anda gunakan untuk mengakses registri.

Sintaks

class CSettingsStore : public CObject

Anggota

Konstruktor Publik

Nama Deskripsi
CSettingsStore::CSettingsStore Membuat CSettingsStore objek.

Metode Publik

Nama Deskripsi
CSettingsStore::Close Menutup kunci registri yang terbuka.
CSettingsStore::CreateKey Membuka kunci yang ditentukan atau membuatnya jika tidak ada.
CSettingsStore::D eleteKey Menghapus kunci yang ditentukan dan semua turunannya.
CSettingsStore::D eleteValue Menghapus nilai yang ditentukan dari kunci terbuka.
CSettingsStore::Open Membuka kunci yang ditentukan.
CSettingsStore::Read Mengambil data untuk nilai kunci tertentu.
CSettingsStore::Write Menulis nilai ke registri di bawah kunci terbuka.

Keterangan

Anggota berfungsi CreateKey dan Open sangat mirip. Jika kunci registri sudah ada, CreateKey dan Open berfungsi dengan cara yang sama. Namun, jika kunci registri tidak ada, CreateKey akan membuatnya sedangkan Open akan mengembalikan nilai kesalahan.

Contoh

Contoh berikut menunjukkan cara menggunakan metode Buka dan Baca kelas CSettingsStore . Cuplikan kode ini adalah bagian dari sampel Demo Tip Alat.

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;
}

Hierarki Warisan

CObject

CSettingsStore

Persyaratan

Header: afxsettingsstore.h

CSettingsStore::Close

Menutup kunci registri yang terbuka.

virtual void Close();

Keterangan

Secara default, metode ini dipanggil dari destruktor Kelas CSettingsStore.

CSettingsStore::CreateKey

Membuka kunci registri atau membuatnya jika tidak ada.

virtual BOOL CreateKey(LPCTSTR pszPath);

Parameter

pszPath
[di] Menentukan nama kunci yang akan dibuat atau dibuka.

Tampilkan Nilai

0 jika berhasil; jika tidak, nilai bukan nol.

Keterangan

CreateKey digunakan sebagai akar pertanyaan registri m_hKey . Ini mencari pszPath sebagai subkuntang dari m_hKey. Jika kunci tidak ada, CreateKey buatlah. Jika tidak, kunci akan terbuka. CreateKey kemudian diatur m_hKey ke kunci yang dibuat atau dibuka.

CSettingsStore::CSettingsStore

CSettngsStore Membuat objek.

CSettingsStore(
    BOOL bAdmin,
    BOOL bReadOnly);

Parameter

bAdmin
[di] Parameter Boolean yang menentukan apakah CSettingsStore objek bertindak dalam mode administrator.

bReadOnly
[di] Parameter Boolean yang menentukan apakah CSettingsStore objek dibuat dalam mode baca-saja.

Keterangan

Jika bAdmin diatur ke TRUE, m_hKey variabel anggota diatur ke HKEY_LOCAL_MACHINE. Jika Anda mengatur bAdmin ke FALSE, m_hKey diatur ke HKEY_CURRENT_USER.

Akses keamanan tergantung pada parameter bReadOnly . Jika bReadonly FALSE, akses keamanan akan diatur ke KEY_ALL_ACCESS. Jika bReadyOnly TRUE, akses keamanan akan diatur ke kombinasi KEY_QUERY_VALUE, KEY_NOTIFY , dan KEY_ENUMERATE_SUB_KEYS. Untuk informasi selengkapnya tentang akses keamanan bersama dengan registri, lihat Keamanan Kunci Registri dan Hak Akses.

Destruktor untuk CSettingsStore rilis m_hKey secara otomatis.

CSettingsStore::D eleteKey

Menghapus kunci dan semua turunannya dari registri.

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

Parameter

pszPath
[di] Nama kunci yang akan dihapus.

bAdmin
[di] Sakelar yang menentukan lokasi kunci yang akan dihapus.

Tampilkan Nilai

Bukan nol jika berhasil; jika tidak, 0.

Keterangan

Metode ini akan gagal jika CSettingsStore objek berada dalam mode baca-saja.

Jika parameter bAdmin nol, DeleteKey cari kunci yang akan dihapus di bawah HKEY_CURRENT_USER. Jika bAdmin bukan nol, DeleteKey cari kunci yang akan dihapus di bawah HKEY_LOCAL_MACHINE.

CSettingsStore::D eleteValue

Menghapus nilai dari m_hKey.

virtual BOOL DeleteValue(LPCTSTR pszValue);

Parameter

pszValue
[di] Menentukan bidang nilai yang akan dihapus.

Tampilkan Nilai

Bukan nol jika berhasil; jika tidak, 0.

CSettingsStore::Open

Membuka kunci registri.

virtual BOOL Open(LPCTSTR pszPath);

Parameter

pszPath
[di] Nama kunci registri.

Tampilkan Nilai

Bukan nol jika berhasil; jika tidak, 0.

Keterangan

Setelah metode ini berhasil membuka kunci yang ditentukan, metode ini diatur m_hKey ke handel kunci ini.

CSettingsStore::Read

Membaca nilai dari kunci dalam registri.

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);

Parameter

pszKey
[di] Penunjuk ke string null-terminated yang berisi nama nilai yang akan dibaca dari registri.

iVal
[out] Referensi ke variabel bilangan bulat yang menerima nilai yang dibaca dari kunci registri.

dwVal
[out] Referensi ke variabel kata ganda 32-bit yang menerima nilai yang dibaca dari kunci registri.

sVal
[out] Referensi ke variabel string yang menerima nilai yang dibaca dari kunci registri.

scStringList
[out] Referensi ke variabel daftar string yang menerima nilai yang dibaca dari kunci registri.

scArray
[out] Referensi ke variabel array string yang menerima nilai yang dibaca dari kunci registri.

dwcArray
[out] Referensi ke variabel array kata ganda 32-bit yang menerima nilai yang dibaca dari kunci registri.

wcArray
[out] Referensi ke variabel array kata 16-bit yang menerima nilai yang dibaca dari kunci registri.

bcArray
[out] Referensi ke variabel array byte yang menerima nilai yang dibaca dari kunci registri.

lpPoint
[out] Referensi ke penunjuk ke POINT struktur yang menerima nilai yang dibaca dari kunci registri.

rect
[out] Referensi ke variabel CRect yang menerima nilai yang dibaca dari kunci registri.

ppData
[out] Penunjuk ke penunjuk ke data yang menerima nilai yang dibaca dari kunci registri.

pByte
[out] Penunjuk ke variabel bilangan bulat yang tidak ditandatangani. Variabel ini menerima ukuran buffer yang dituju ppData .

daftar
[out] Referensi ke variabel CObList yang menerima nilai yang dibaca dari kunci registri.

Obj
[out] Referensi ke variabel CObject yang menerima nilai yang dibaca dari kunci registri.

pObj
[out] Referensi ke penunjuk ke CObject variabel yang menerima nilai yang dibaca dari kunci registri.

Tampilkan Nilai

Bukan nol jika berhasil; jika tidak, 0.

Keterangan

Readmemeriksa pszKey sebagai subkuntang dari m_hKey.

CSettingsStore::Write

Menulis nilai ke registri di bawah kunci terbuka.

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);

Parameter

pszKey
[di] Penunjuk ke string yang berisi nama nilai yang akan diatur.

iVal
[di] Referensi ke variabel bilangan bulat yang berisi data yang akan disimpan.

dwVal
[di] Referensi ke variabel kata ganda 32-bit yang berisi data untuk disimpan.

pszVal
[di] Penunjuk ke variabel string yang dihentikan null yang berisi data yang akan disimpan.

scStringList
[di] Referensi ke variabel CStringList yang berisi data yang akan disimpan.

bcArray
[di] Referensi ke variabel array byte yang berisi data yang akan disimpan.

scArray
[di] Referensi ke variabel array string yang berisi data untuk disimpan.

dwcArray
[di] Referensi ke variabel array kata ganda 32-bit yang berisi data yang akan disimpan.

wcArray
[di] Referensi ke variabel array kata 16-bit yang berisi data yang akan disimpan.

rect
[di] Referensi ke variabel CRect yang berisi data yang akan disimpan.

lpPoint
[di] Referensi ke penunjuk ke POINT variabel yang berisi data yang akan disimpan.

pData
[di] Penunjuk ke buffer yang berisi data yang akan disimpan.

nByte
[di] Menentukan ukuran, dalam byte, data tempat parameter pData menunjuk.

daftar
[di] Referensi ke variabel CObList yang berisi data yang akan disimpan.

Obj
[di] Referensi ke variabel CObject yang berisi data yang akan disimpan.

pObj
[di] Penunjuk ke penunjuk ke CObject variabel yang berisi data yang akan disimpan.

Tampilkan Nilai

TRUE jika berhasil; jika tidak FALSE.

Keterangan

Untuk menulis ke registri, Anda harus mengatur bReadOnly ke nilai bukan nol saat Membuat objek CSettingsStore . Untuk informasi selengkapnya, lihat CSettingsStore::CSettingsStore.

Lihat juga

Bagan Hierarki
Kelas
Kelas CWinAppEx