次の方法で共有


OROpenHive 関数

指定したレジストリ ハイブ ファイルをメモリに読み込み、ハイブを検証します。

構文

DWORD OROpenHive(
  _In_  PCWSTR  lpHivePath,
  _Out_ PORHKEY phkResult
);

パラメーター

lpHivePath [in]

メモリに読み込むレジストリ ハイブ ファイルの名前を指定する Unicode 文字列へのポインター。 これは、ORSaveHive 関数で保存された Hive ファイル、または RegSaveKey または RegSaveKeyEx 関数を使用して作成された Hive ファイルです。 ファイルのサイズは 4 GB 未満で、呼び出し元はファイルにFILE_READ_DATAアクセスできる必要があります。 詳細については、「 ファイル のセキュリティとアクセス権」を参照してください。

phkResult [out]

読み込まれたオフライン レジストリ ハイブのルート キーへのハンドルを受け取る変数へのポインター。 レジストリ ハイブ ファイルを開くことができない場合、または検証が失敗した場合、このパラメーターは NULL に設定されます。

戻り値

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

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

  • ファイルのサイズが空または 4 GB を超える場合、関数は ERROR_BADDBを返します。
  • 呼び出し元がファイルを開くために必要なアクセス権を持っていない場合、関数はERROR_ACCESS_DENIEDを返します。
  • レジストリ ハイブが検証に失敗した場合、関数は ERROR_NOT_REGISTRY_FILEを返します。

解説

OROpenHive 関数は、レジストリ ハイブを検証する唯一のオフライン レジストリ関数です。 検証に失敗した場合、ハイブの修復は試行されません。

要件

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

関連項目

ORCloseHive

ORCreateHive

ORSaveHive

RegSaveKey

RegSaveKeyEx