我正在尝试为处理HTTP协议(Microsoft Edge)的应用程序加载名称和图标。
两者都显示在HKEY_CURRENT_USER \ SOFTWARE \ Classes \ AppXq0fevzme2pys62n3e0fbqa7peapykr8v
下图标:@ {Microsoft.MicrosoftEdge_38.14393.0.0_neutral__8wekyb3d8bbwe?ms-resource://Microsoft.MicrosoftEdge/Files/Assets/MicrosoftEdgeSquare44x44.png}
Edge的App Name看起来很相似。
对于名称,我使用RegLoadMUIStringW,它从资源加载字符串,它适用于IE(格式为@C:\ Windows \ System32 \ ieframe.dll,-55175的字符串)和Edge(类似于上面的图标字符串,例如@ {...?ms-resource:// ...})。
但是,我找不到一个函数,它会为IE(“C:\ Program Files \ Internet Explorer \ iexplore.exe”,0)和Edge(见上文)统一加载图标(ApplicationIcon)。此外,我找不到加载Edge图标的方法(对于IE我解析字符串并使用SHDefExtractIconW)。
是否有通用功能,用旧资源名称加载图标(例如C:\ file,1ndex)和新资源(ms-resource)?
如果没有,是否有记录的方法通过上面提供的字符串加载另一个应用程序的ms-resource图标?