c++ - 确定与 URI 方案关联的默认图标

标签 c++ windows winapi uri

我已经找到了如何 register an application to an URI scheme .此处的示例显示了一个假设的 alert 协议(protocol)的以下注册表结构:

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 标志),但它似乎不适用于协议(protocol)。结束了注册表。

关于c++ - 确定与 URI 方案关联的默认图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35655605/

相关文章:

c++ - 为什么...(三点)在 catch block 中存在?

c++ - 扩展外部应用程序的菜单

c++ - FileInformation - 提取文件重命名详细信息

c++ - 如何判断当前线程是否正在模拟?

c++ - winapi listview检查项c++

python - 我无法使用 ctypes 访问 C++ 类属性

c++ - boost::format 和自定义打印标准容器

c++ - Bash 在子 shell 中的后台运行命令

C++ REG_SZ 到 char* 并在没有提升权限的情况下读取 HKLM

c++ - 是否可以在 Windows 登录屏幕上显示我的窗口?