CSettingsStoreSP クラス
このCSettingsStoreSP
クラスは、C設定Store クラスのインスタンスを作成するために使用できるヘルパー クラスです。
構文
class CSettingsStoreSP
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
C設定StoreSP::C設定StoreSP | CSettingsStoreSP オブジェクトを構築します。 |
パブリック メソッド
名前 | 説明 |
---|---|
C設定StoreSP::Create | から CSettingsStore 派生したクラスのインスタンスを作成します。 |
C設定StoreSP::SetRuntimeClass | ランタイム クラスを設定します。 このメソッドは Create ランタイム クラスを使用して、作成するオブジェクトのクラスを決定します。 |
データ メンバー
名前 | 説明 |
---|---|
m_dwUserData |
オブジェクトに格納されている CSettingsStoreSP カスタム ユーザー データ。 このデータは、オブジェクトのコンストラクターで CSettingsStoreSP 指定します。 |
m_pRegistry |
CSettingsStore メソッドが作成する Create -derived オブジェクト。 |
解説
このクラスを CSettingsStoreSP
使用すると、すべての MFC レジストリ操作を XML ファイルやデータベースなどの他の場所にリダイレクトできます。 これを行うには、次の手順を実行します。
クラス (など
CMyStore
) を作成し、そこからCSettingsStore
派生させます。カスタム
CSettingsStore
クラスでDECLARE_DYNCREATEマクロとIMPLEMENT_DYNCREATE マクロを使用して、動的な作成を有効にします。仮想関数をオーバーライドし、カスタム クラスに
Read
関数とWrite
関数を実装します。 目的の場所にデータを読み書きするためのその他の機能を実装します。アプリケーションで、クラスから取得した CRuntimeClass 構造体へのポインターを呼び出
CSettingsStoreSP::SetRuntimeClass
して渡します。
フレームワークが通常レジストリにアクセスするたびに、カスタム クラスが動的にインスタンス化され、それを使用してデータの読み取りまたは書き込みが行われます。
CSettingsStoreSP::SetRuntimeClass
はグローバル静的変数を使用します。 そのため、一度に使用できるカスタム ストアは 1 つだけです。
必要条件
ヘッダー: afxsettingsstore.h
C設定StoreSP::Create
C設定Store クラスから派生したオブジェクトの新しいインスタンスを作成します。
CSettingsStore& CSettingsStoreSP Create(
BOOL bAdmin,
BOOL bReadOnly);
パラメーター
b管理
[in]オブジェクトが管理者モードで作成されるかどうかを CSettingsStore
決定するブール型パラメーター。
bReadOnly
[in]オブジェクトが読み取り専用アクセス用に CSettingsStore
作成されるかどうかを決定するブール型パラメーター。
戻り値
新しく作成 CSettingsStore
されたオブジェクトへの参照。
解説
C設定StoreSP::SetRuntimeClass メソッドを使用して、作成するオブジェクトCSettingsStoreSP::Create
の種類を決定できます。 既定では、このメソッドはオブジェクトを CSettingsStore
作成します。
管理者モードでオブジェクトを CSettingsStore
作成する場合、すべてのレジストリ アクセスの既定の場所はHKEY_LOCAL_MACHINE。 それ以外の場合、すべてのレジストリ アクセスの既定の場所は HKEY_CURRENT_UStandard Edition R です。
b管理 が TRUE の場合、アプリケーションには管理者権限が必要です。 それ以外の場合、レジストリにアクセスしようとすると失敗します。
例
次の例では、クラスのメソッドを使用する Create
方法を CSettingsStoreSP
示します。
CSettingsStoreSP regSP;
CSettingsStore ® = regSP.Create(FALSE, TRUE);
C設定StoreSP::C設定StoreSP
C設定StoreSP クラス オブジェクトを構築します。
CSettingsStoreSP::CSettingsStoreSP(DWORD dwUserData = 0);
パラメーター
dwUserData
[in]オブジェクトが格納する CSettingsStoreSP
ユーザー定義データ。
解説
オブジェクトはCSettingsStoreSP
、dwUserData のデータを保護されたメンバー変数に格納しますm_dwUserData
。
C設定StoreSP::SetRuntimeClass
ランタイム クラスを設定します。 C設定StoreSP::Create メソッドは、ランタイム クラスを使用して、作成するオブジェクトの種類を決定します。
static BOOL __stdcall CSettingsStoreSP::SetRuntimeClass(CRuntimeClass* pRTI);
パラメーター
pRTI
[in]C設定Store クラスから派生したクラスのランタイム クラス情報へのポインター。
戻り値
成功した場合は TRUE。FAL Standard Edition pRTI で識別されるクラスが派生CSettingsStore
していない場合。
解説
C設定StoreSP クラスを使用してクラスを派生CSettingsStore
させることができます。 派生CSettingsStore
するカスタム クラスのオブジェクトを作成する場合は、このメソッドSetRuntimeClass
を使用します。
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示