IApplicationAssociationRegistration::QueryCurrentDefault 方法 (shobjidl_core.h)

确定给定关联类型的默认应用程序。 这是 ShellExecute 针对该类型启动的默认应用程序。

语法

HRESULT QueryCurrentDefault(
  [in]  LPCWSTR          pszQuery,
  [in]  ASSOCIATIONTYPE  atQueryType,
  [in]  ASSOCIATIONLEVEL alQueryLevel,
  [out] LPWSTR           *ppszAssociation
);

参数

[in] pszQuery

类型: LPCWSTR

指向以 null 结尾的 Unicode 字符串的指针,该字符串包含文件扩展名或协议,例如 .mp3 或 http。

[in] atQueryType

类型: ASSOCIATIONTYPE

指定关联类型的 ASSOCIATIONTYPE 枚举值之一,例如扩展或 MIME 类型。

[in] alQueryLevel

类型: ASSOCIATIONLEVEL

指定关联级别的 ASSOCIATIONLEVEL 枚举值之一,例如每用户或计算机。 这通常是 AL_EFFECTIVE

[out] ppszAssociation

类型: LPWSTR*

此方法返回时,包含指向标识当前默认关联的 ProgID 的指针的地址。

注意 调用应用程序负责通过 CoTaskMemFree 释放字符串。
 

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

生成的字符串通常是与已注册的应用程序关联的 ProgID 之一匹配的 ProgID,但有一些例外情况:如果返回的字符串是计算机默认协议,则它是一个旧字符串,指示 .exe 处理程序的命令行而不是 ProgID。 同样,如果返回计算机默认 MIME 类型,则返回旧类标识符 (CLSID) 字符串,而不是 ProgID。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 shobjidl_core.h (包括 Shobjidl.h)

另请参阅

默认程序

IApplicationAssociationRegistration