我希望std::ostream& operator<<(std::ostream& o, const X& x) {
o << x._x;
return o;
}
上的CLSID
和Control Panel
Add or Remove Programs
获得Windows XP
。
示例:
shell:::{26EE0668-A00A-44D7-9371-BEB064C98683}
- 仅适用于Vista(控制面板)。
有任何建议如何获得它?
答案 0 :(得分:1)
我想获得控制面板的CLSID
您可以使用shell:ControlPanelFolder
代替supported on Win XP的CLSID。
您也可以通过SHGetSpecialFolderLocation()
传递参数nFolder
,通过CSIDL_CONTROLS
获取文件夹位置。
和添加或删除程序
Raymond Chen有一个blog post,他comments:
Windows NT / 2000 / XP没有&#34;程序和功能&#34;文件夹,所以 这个问题没有实际意义。如果你的意思是&#34;枚举所有已安装的 应用程序&#34;,没有内置的方法来做到这一点。你必须 模仿&#34;添加/删除程序&#34;是的,这是凌乱的,因为 添加/删除程序枚举某些可能不存在的应用程序 很明显(比如MSI商店)。