CmCreateDeviceContainerWorker
NTSTATUS __stdcall CmCreateDeviceContainerWorker(
HPNPCTX *hPnpCtx,
WCHAR *DeviceContainerId,
UINT64 DesiredAccess,
VOID **DeviceContainerKey,
UINT8 *Created,
UINT64 Flags){
int v9;
bool v10;
INT64 v12;
INT64 Create;
__int64 v14[3];
LODWORD(v14[0]) = 0;
if( (_WORD)Flags )
return -1073741811;
LOBYTE(Create) = 1;
LODWORD(v12) = DesiredAccess;
v9 = CmOpenDeviceContainerRegKey(
hPnpCtx,
DeviceContainerId,
DesiredAccess,
(INT64)DeviceContainerKey,
v12,
Create,
DeviceContainerKey,
(UINT64 *)v14);
if( v9 >= 0 )
{
v10 = LODWORD(v14[0]) == 1;
*Created = LODWORD(v14[0]) == 1;
if( v10 )
CmRaiseCreateEvent(hPnpCtx, DeviceContainerId, CM_OBJECT_TYPE_DEVICE_CONTAINER, *DeviceContainerKey);
}
return v9;
}Referenced by:
CmCreateDeviceContainer