CONFLICT_DETAILS_A 结构 (cfgmgr32.h)

CONFLICT_DETAILS 结构用作 CM_Get_Resource_Conflict_Details 函数的参数。

语法

typedef struct _CONFLICT_DETAILS_A {
  ULONG   CD_ulSize;
  ULONG   CD_ulMask;
  DEVINST CD_dnDevInst;
  RES_DES CD_rdResDes;
  ULONG   CD_ulFlags;
  CHAR    CD_szDescription[MAX_PATH];
} CONFLICT_DETAILS_A, *PCONFLICT_DETAILS_A;

成员

CD_ulSize

CONFLICT_DETAILS结构的大小(以字节为单位)。

CD_ulMask

CM_Get_Resource_Conflict_Details 的调用方提供的一个或多个位标志。 下表介绍了位标志。

标志 描述
CM_CDMASK_DEVINST 如果已设置, CM_Get_Resource_Conflict_DetailsCD_dnDevInst 成员提供值。
CM_CDMASK_RESDES 未使用。
CM_CDMASK_FLAGS 如果已设置, CM_Get_Resource_Conflict_DetailsCD_ulFlags 成员提供值。
CM_CDMASK_DESCRIPTION 如果已设置, CM_Get_Resource_Conflict_DetailsCD_szDescription 成员提供值。

CD_dnDevInst

如果在 CD_ulMask 中设置了 CM_CDMASK_DEVINST,则此成员将收到具有冲突资源的设备实例的句柄。 如果无法获取句柄,则成员将收到 -1。

CD_rdResDes

未使用。

CD_ulFlags

如果在 CD_ulMask 中设置了 CM_CDMASK_FLAGS,则此成员可以接收下表中列出的位标志。

标志 描述
CM_CDFLAGS_DRIVER 如果设置, CD_szDescription 成员中包含的字符串表示驱动程序名称而不是设备名称, CD_dnDevInst 为 -1。
CM_CDFLAGS_ROOT_OWNED 如果设置,则冲突资源由根设备拥有 (即 HAL) , CD_dnDevInst 为 -1。
CM_CDFLAGS_RESERVED 如果设置,则无法确定冲突资源的所有者, CD_dnDevInst 为 -1。

CD_szDescription[MAX_PATH]

如果在 CD_ulMask 中设置了 CM_CDMASK_DESCRIPTION,则此成员将收到一个以 NULL 结尾的文本字符串,表示拥有资源的设备的说明。 如果在 CD_ulFlags 中设置了 CM_CDFLAGS_DRIVER,则此字符串表示驱动程序名称。 如果设置了CM_CDFLAGS_ROOT_OWNED或CM_CDFLAGS_RESERVED,则字符串值为 NULL

备注

注意

cfgmgr32.h 标头将 CONFLICT_DETAILS 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
标头 cfgmgr32.h (包括 Cfgmgr32.h)

另请参阅

CM_Get_Resource_Conflict_Details