SetupDiGetClassDescriptionExA 函数 (setupapi.h)

SetupDiGetClassDescriptionEx 函数检索本地或远程计算机上安装的安装程序类的说明。

语法

WINSETUPAPI BOOL SetupDiGetClassDescriptionExA(
  [in]            const GUID *ClassGuid,
  [out]           PSTR       ClassDescription,
  [in]            DWORD      ClassDescriptionSize,
  [out, optional] PDWORD     RequiredSize,
  [in, optional]  PCSTR      MachineName,
                  PVOID      Reserved
);

参数

[in] ClassGuid

指向要检索其说明的设置类的 GUID 的指针。

[out] ClassDescription

指向接收类说明的字符缓冲区的指针。

[in] ClassDescriptionSize

ClassDescription 参数指向的缓冲区的大小(以字符为单位)。 NULL 终止的类说明的最大长度(以字符为单位)是LINE_LEN。 有关详细信息,请参阅以下 备注 部分。

[out, optional] RequiredSize

指向 DWORD 类型的变量的指针,该变量接收请求的 NULL 终止类说明所需的大小(以字符为单位)。 此指针是可选的,可以 NULL

[in, optional] MachineName

指向 NULL 终止的字符串的指针,该字符串提供安装类所在的远程计算机的名称。 此指针是可选的,可以 NULL。 如果类安装在本地计算机上,请将指针设置为 NULL

谨慎

从 Windows 8 和 Windows Server 2012 开始,不支持使用此函数访问远程计算机,因为此功能已被删除。

Reserved

保留供系统使用。 此函数的调用方必须将此参数设置为 NULL

返回值

如果函数成功,则返回 TRUE。 否则,它会返回 FALSE,可以通过调用 getLastError来检索记录的错误。

言论

如果类的注册表项中有一个友好名称,则此例程返回友好名称。 否则,此例程返回类名。

SetupDiGetClassDescriptionEx 不会对可以返回的类说明的长度强制执行限制。 即使 NULL 终止的类说明大于LINE_LEN,此函数也返回所需的大小。 但是,LINE_LEN是有效 NULL 终止类说明的最大长度。 调用方永远不需要大于LINE_LEN的缓冲区。

注意

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

要求

要求 价值
最低支持的客户端 Microsoft Windows 2000 及更高版本的 Windows 中可用。
目标平台 桌面
标头 setupapi.h (包括 Setupapi.h)
Setupapi.lib

另请参阅

SetupDiBuildClassInfoList

SetupDiBuildClassInfoListEx

SetupDiGetDeviceInfoListDetail

SetupDiGetINFClass