assocQueryKeyW 函数 (shlwapi.h)

从注册表中搜索并检索与文件或协议关联的项。

语法

LWSTDAPI AssocQueryKeyW(
  [in]  ASSOCF   flags,
  [in]  ASSOCKEY key,
  [in]  LPCWSTR  pszAssoc,
  [in]  LPCWSTR  pszExtra,
  [out] HKEY     *phkeyOut
);

参数

[in] flags

类型: ASSOCF

可用于控制搜索的标志。 它可以是 ASSOCF 值的任意组合,只不过只能包含一个ASSOCF_INIT值。

[in] key

类型: ASSOCKEY

ASSOCKEY 值,该值指定要返回的键的类型。

[in] pszAssoc

类型: LPCTSTR

指向以 null 结尾的字符串的指针,该字符串用于确定根键。 可以使用四种类型的字符串。

文件扩展名

文件扩展名,例如 .txt。

CLSID

采用标准“{GUID}”格式的 CLSID GUID。

ProgID

应用程序的 ProgID,例如Word。Document.8.

可执行文件名称

应用程序的 .exe 文件的名称。 必须在标志中设置ASSOCF_OPEN_BYEXENAME标志

[in] pszExtra

类型: LPCTSTR

指向以 null 结尾的可选字符串的指针,其中包含有关字符串位置的其他信息。 它通常设置为 Shell 谓词,例如 open。 如果未使用此参数,请将此参数设置为 NULL

[out] phkeyOut

类型: HKEY*

指向键的 HKEY 值的指针。

返回值

类型: HRESULT

如果成功,则返回S_OK,否则返回 COM 错误值。

注解

此函数是 IQueryAssociations 接口的 包装器。 它旨在简化使用 接口的过程。 有关文件和协议关联函数工作原理的进一步讨论,请参阅 IQueryAssociations

注意

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

要求

要求
最低受支持的客户端 Windows 2000 专业版、Windows XP [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 shlwapi.h
Library Shlwapi.lib
DLL Shlwapi.dll (5.0 或更高版本)