PpInitializeBootDDB
NTSTATUS __stdcall PpInitializeBootDDB(_LOADER_PARAMETER_BLOCK *LoaderBlock, UINT64 Phase){
NTSTATUS result;
_LOADER_PARAMETER_EXTENSION *Extension;
VOID *DrvDBPatchImage;
if( (_DWORD)Phase )
return 0;
PpDDBHandle = 0i64;
PpBootDDB = 0i64;
PpDDBPatchHandle = 0i64;
PpBootDDBPatch = 0i64;
ExInitializeResourceLite((INT64)&PnpReplaceEvent + 5792);
PiInitializeDDBCache();
if( InitIsWinPEMode )
return -1073741823;
result = PpBootDDBHelper(LoaderBlock->Extension->DrvDBImage, LoaderBlock->Extension->DrvDBSize);
if( result >= 0 )
{
Extension = LoaderBlock->Extension;
DrvDBPatchImage = Extension->DrvDBPatchImage;
if( DrvDBPatchImage )
PpBootDDBHelper(DrvDBPatchImage, Extension->DrvDBPatchSize);
PpBootDDBInitialized = 1;
return 0;
}
return result;
}Referenced by:
IopInitializePlugPlayServices