SetupDiGetActualModelsSectionA 函数 (setupapi.h)

SetupDiGetActualModelsSection 函数检索从设备 INF 文件安装设备时要使用的相应修饰 INF 模型部分。

语法

WINSETUPAPI BOOL SetupDiGetActualModelsSectionA(
  [in]            PINFCONTEXT          Context,
  [in, optional]  PSP_ALTPLATFORM_INFO AlternatePlatformInfo,
  [out, optional] PSTR                 InfSectionWithExt,
  [in]            DWORD                InfSectionWithExtSize,
  [out, optional] PDWORD               RequiredSize,
                  PVOID                Reserved
);

参数

[in] Context

指向 INF 文件上下文的指针,该上下文指定 INF 文件的 INF 制造商部分中制造商标识符条目。 制造商标识符条目指定 INF Models 节名称,并选择性地指定 Model 节名称的 TargetOSVersion 修饰。 有关 INF 文件和 INF 文件上下文的信息,请参阅平台 SDK 主题,了解如何 使用 INF 文件和INFCONTEXT 结构

[in, optional] AlternatePlatformInfo

指向 SP_ALTPLATFORM_INFO 结构的指针,该结构提供有关 Windows 版本和处理器体系结构的信息。 此结构的 cbSize 成员必须设置为 sizeof (SP_ALTPLATFORM_INFO_V2 ) 。 此参数是可选的,可以设置为 NULL

[out, optional] InfSectionWithExt

指向缓冲区的指针,该缓冲区接收包含修饰的 INF 模型 节名称和 NULL 终止符的字符串。 如果未提供 AlternatePlatformInfo ,修饰的 INF 模型 部分名称将应用于当前平台;否则,名称将应用于指定的备用平台。 此参数是可选的,可以设置为 NULL。 如果此参数为 NULL,则该函数返回 TRUE 并将 RequiredSize 设置为返回修饰 的模型 节名称和终止 NULL 字符所需的大小(以字符为单位)。

[in] InfSectionWithExtSize

DecoratedModelsSection 缓冲区的大小(以字符为单位)。 如果 DecoratedModelsSectionNULL,则必须将此参数设置为零。

[out, optional] RequiredSize

指向 DWORD 类型变量的指针,该变量接收检索修饰模型节名称和终止 NULL 字符所需的 DecoratedModelsSection 缓冲区的大小(以字符为单位)。 此参数是可选的,可以设置为 NULL

Reserved

保留供内部系统使用。 此参数必须设置为 NULL

返回值

如果操作成功,SetupDiGetActualModelsSection 将返回 TRUE。 否则,函数返回 FALSE ,并且可以通过调用 GetLastError 来检索记录的错误。

注解

SetupDiGetActualModelsSection 确定上下文 () 提供的制造商标识符条目中哪些 TargetOSVersion 字段适用于当前平台(如果未提供 AlternatePlatformInfo)或备用平台(如果提供了备用平台信息)。 SetupDiGetActualModelsSection 基于所有 TargetOSVersion 字段选择最合适的平台,将 TargetOSVersion 字符串追加到 INF Models 节名称,并将修饰的 INF Models 节名称返回给调用方。 在 制造商标识符 条目中,操作系统主版本由 OSMajorVersion 字段指定,操作系统次要版本由 OSMinorVersion 字段指定。

有关检索设备的 INF DDInstall 部分 的信息,请参阅 SetupDiGetActualSectionToInstall

注意

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

要求

   
最低受支持的客户端 在 Windows Server 2003 中提供 Service Pack 1 (SP1) 及更高版本的 Windows。
目标平台 桌面
标头 setupapi.h (包括 Setupapi.h)
Library Setupapi.lib

另请参阅

INF DDInstall 节

SP_ALTPLATFORM_INFO

SetupDiGetActualSectionToInstall