确定与 URI 方案关联的默认图标
Determine default icon associated with an URI scheme
我找到了 register an application to an URI scheme 的方法。此处的示例显示了假设的 alert
协议的以下注册表结构:
HKEY_CLASSES_ROOT
alert
(Default) = "URL:Alert Protocol"
URL Protocol = ""
DefaultIcon
(Default) = "alert.exe,1"
shell
open
command
(Default) = "C:\Program Files\Alert\alert.exe" "%1"
有一个 DefaultIcon
条目,我想针对给定的 URI 方案查询它。但是,我发现没有 API 支持这一点。
如果我得到一个 URI 作为字符串,我如何在 Win32 中找到关联的默认图标,而不是自己走注册表?
SHGetFileInfo()
API 适用于文件扩展名(使用 SHGFI_USEFILEATTRIBUTES
标志),但它似乎不适用于协议。结束了注册表。
我找到了 register an application to an URI scheme 的方法。此处的示例显示了假设的 alert
协议的以下注册表结构:
HKEY_CLASSES_ROOT
alert
(Default) = "URL:Alert Protocol"
URL Protocol = ""
DefaultIcon
(Default) = "alert.exe,1"
shell
open
command
(Default) = "C:\Program Files\Alert\alert.exe" "%1"
有一个 DefaultIcon
条目,我想针对给定的 URI 方案查询它。但是,我发现没有 API 支持这一点。
如果我得到一个 URI 作为字符串,我如何在 Win32 中找到关联的默认图标,而不是自己走注册表?
SHGetFileInfo()
API 适用于文件扩展名(使用 SHGFI_USEFILEATTRIBUTES
标志),但它似乎不适用于协议。结束了注册表。