次の方法で共有


RegRestoreKeyW 関数 (winreg.h)

指定したファイル内のレジストリ情報を読み取り、指定したキーにコピーします。 このレジストリ情報は、キーと複数レベルのサブキーの形式である場合があります。

システム ファイルやレジストリ ハイブを含むシステム状態をバックアップまたは復元するアプリケーションでは、レジストリ関数の代わりに ボリューム シャドウ コピー サービス を使用する必要があります。

構文

LSTATUS RegRestoreKeyW(
  [in] HKEY    hKey,
  [in] LPCWSTR lpFile,
  [in] DWORD   dwFlags
);

パラメーター

[in] hKey

開いているレジストリ キーへのハンドル。 このハンドルは、RegCreateKeyEx または RegOpenKeyEx 関数 返されます。 また、次のいずれかの定義済みキー することもできます。

HKEY_CLASSES_ROOTHKEY_CURRENT_CONFIGHKEY_CURRENT_USERHKEY_LOCAL_MACHINEHKEY_USERS このキーとその子孫キーに含まれる情報は、lpFile パラメーターが指すファイル内の情報によって上書きされます。

[in] lpFile

レジストリ情報を含むファイルの名前。 このファイルは通常、RegSaveKey 関数を使用して作成されます。

[in] dwFlags

キーまたはキーの復元方法を示すフラグ。 このパラメーターには、次のいずれかの値を指定できます。

価値 意味
REG_FORCE_RESTORE
0x00000008L
指定した場合、開いているハンドルが、hKey パラメーターがポイントするレジストリ階層内の場所の下に存在する場合でも、復元操作が実行されます。
REG_WHOLE_HIVE_VOLATILE
0x00000001L
指定すると、新しい揮発性 (メモリのみ) のレジストリ情報セット (Hive) が作成されます。 REG_WHOLE_HIVE_VOLATILEを指定する場合、hKey パラメーターで識別されるキーは、HKEY_USERS 値または HKEY_LOCAL_MACHINE 値である必要があります。

戻り値

関数が成功した場合、戻り値はERROR_SUCCESS。

関数が失敗した場合、戻り値は Winerror.h で定義されている 0 以外のエラー コードです。 FormatMessage 関数を FORMAT_MESSAGE_FROM_SYSTEM フラグと共に使用すると、エラーの一般的な説明を取得できます。

備考

2 つの異なるレジストリ ハイブ ファイル形式があります。 現在のオペレーティング システムで作成されたレジストリ ハイブは、通常、以前のオペレーティング システムでは読み込めません。

hKey パラメーターのサブキーが開いている場合、RegRestoreKey 失敗します。

呼び出し元のプロセスには、レジストリが存在するコンピューターに対するSE_RESTORE_NAMEおよびSE_BACKUP_NAME権限が必要です。 詳細については、「特別な特権を使用した実行 」を参照してください。

この関数は、ファイル内の最上位レベルのキーの名前に関係なく、指定されたキーの下にあるキーと値を、ファイル内の最上位のキーの補助となるキーと値に置き換えます。 たとえば、hKey は、サブキー B と C を持つキー A を識別します。一方、lpFile パラメーターは、サブキー Y と Z を持つキー X を含むファイルを指定します。RegRestoreKey呼び出した後、レジストリには、サブキー Y と Z を持つキー A が含まれます。A の値エントリは、X の値エントリに置き換えられます。

lpFile で指定されたファイル内の新しい情報は、キー名を除き、hKey パラメーターで指定されたキーの内容を上書きします。

hKey がリモート コンピューターのキーを表す場合、lpFile で記述されるパスはリモート コンピューターに対して相対的です。

手記

winreg.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして RegRestoreKey を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winreg.h (Windows.h を含む)
ライブラリ Advapi32.lib
DLL Advapi32.dll

関連項目

RegDeleteKey を する

RegLoadKey を する

RegReplaceKey を する

RegSaveKey

レジストリ関数 を する

レジストリの概要