2016-02-26 63 views
1

我已經找到如何register an application to an URI scheme。這個例子也顯示了下面的註冊表結構的假設alert協議:確定與URI方案關聯的默認圖標

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的API。

如果給我一個URI作爲字符串,我怎麼在Win32中找到相關的默認圖標,缺乏自己的註冊表?

+0

就像你說的那樣,沒有用於查詢協議細節的API。您將不得不直接從註冊表中手動讀取圖標數據。 –

回答

0

SHGetFileInfo() API適用於文件擴展名(使用SHGFI_USEFILEATTRIBUTES標誌),但它似乎不適用於協議。結束了註冊表的行走。