ORSaveHive 関数

指定したオフライン レジストリ ハイブをファイルに書き込みます。

構文

DWORD ORSaveHive(
  _In_ ORHKEY Handle,
  _In_ PCWSTR lpHivePath,
  _In_ DWORD  dwOsMajorVersion,
  _In_ DWORD  dwOsMinorVersion
);

パラメーター

ハンドル [入力]

保存するオフライン レジストリ ハイブへのハンドル。

lpHivePath [in]

レジストリ ハイブ ファイルの名前を指定する Unicode 文字列へのポインター。 既存のファイルの名前にすることはできません。

dwOsMajorVersion [in]

オペレーティング システムのメジャー バージョン番号。 このメンバーには、次のいずれかの値を指定できます。

説明
5
dwOsMinorVersion が 1 の場合、オペレーティング システムは Windows XP です。
dwOsMinorVersion が 2 の場合、オペレーティング システムは Windows Server 2003 R2、Windows Server 2003、または Windows XP Professional x64 Edition です。
6
dwOsMinorVersion が 0 の場合、オペレーティング システムは Windows Server 2008 または Windows Vista です。
dwOsMinorVersion が 1 の場合、オペレーティング システムは Windows Server 2008 R2 または Windows 7 です。

 

dwOsMinorVersion [in]

オペレーティング システムのマイナー バージョン番号。 このメンバーには、次のいずれかの値を指定できます。

説明
0
dwOsMajorVersion が 6 の場合、オペレーティング システムは Windows Server 2008 または Windows Vista です。
1
dwOsMajorVersion が 5 の場合、オペレーティング システムは Windows XP です。
dwOsMajorVersion が 6 の場合、オペレーティング システムは Windows Server 2008 R2 または Windows 7 です。
2
dwOsMajorVersion が 5 の場合、オペレーティング システムは Windows Server 2003 R2、Windows Server 2003、または Windows XP Professional x64 Edition です。
dwOsMajorVersion が 6 の場合、dwOsMinorVersion パラメーターは 0 または 1 である必要があります。

 

戻り値

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

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

  • 呼び出し元にファイルを書き込むのに必要なアクセス権がない場合、関数は ERROR_ACCESS_DENIEDを返します。
  • 指定したファイルが既に存在する場合、関数は ERROR_ALREADY_EXISTSを返します。

解説

オフライン レジストリ ハイブに加えられた変更を保存するには、 ORSaveHive 関数を使用する必要があります。 HIVE をファイルに保存するために ORSaveHive が呼び出されるまで、変更は保持されません。

dwOsMajorVersion パラメーターと dwOsMinorVersion パラメーターは、レジストリ ハイブ ファイルのターゲット形式を指定します。 次の表は、最新のオペレーティング システムのバージョン番号をまとめたものです。

オペレーティング システム バージョン番号
Windows Server 2008 R2 6.1
Windows 7 6.1
Windows Server 2008 6.0
Windows Vista 6.0
Windows Server 2003 R2 5.2
Windows Server 2003 5.2
Windows XP Professional x64 Edition 5.2
Windows XP 5.1

 

GetVersionEx 関数を使用して、現在のオペレーティング システムに関する情報を取得します。

ORSaveHive 関数は、ファイルへのハイブの書き込み中にレジストリ ハイブをロックし、ファイルを閉じてロックを解除します。 レジストリ ハイブは、 ORCloseHive 関数を呼び出して閉じるまでメモリ内に残ります。 開いている間にレジストリ ハイブをさらに変更できます。ただし、これらの変更を保持するには、 ORSaveHive 関数によって既存のファイルが上書きされないため、ハイブを新しいファイルに保存する必要があります。

ORSaveHive 関数を使用して、オフライン レジストリ ハイブの一部を保存できます。 Handle パラメーターで指定されたキーは、指定したキーとそのすべてのサブキーで構成されるハイブのルート キーになります。

要件

要件
再頒布可能パッケージ
Windows オフライン レジストリ ライブラリ バージョン 1.0 以降
ヘッダー
Offreg.h
[DLL]
Offreg.dll

関連項目

GetVersionEx

ORCloseHive

OROpenHive