AssocQueryKeyA 函数 (shlwapi.h)

搜索并检索与注册表中的文件或协议关联相关的密钥。

语法

LWSTDAPI AssocQueryKeyA(
  [in]  ASSOCF   flags,
  [in]  ASSOCKEY key,
  [in]  LPCSTR   pszAssoc,
  [in]  LPCSTR   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 谓词,例如 打开。 如果未使用此参数,请将此参数设置为 NULL

[out] phkeyOut

类型:HKEY*

指向键的 HKEY 值的指针。

返回值

类型:HRESULT

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

言论

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

注意

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

要求

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