Windows 如何将图标指定给自定义文件类型? P>在C或C++中有任何方法(我知道它可以在C语言中完成,所以如果你知道怎么做,它也会有帮助)?

Windows 如何将图标指定给自定义文件类型? P>在C或C++中有任何方法(我知道它可以在C语言中完成,所以如果你知道怎么做,它也会有帮助)?,windows,icons,file-type,Windows,Icons,File Type,我想要的是,通过我自己的应用程序,自动将自定义文件扩展名与自定义图标关联起来。例如,使所有当前和后续的.foo文件都有自己的图像,而不是默认的平淡白纸。就像Java在安装.jar文件和Dev-C++到.C和.cpp时对它们所做的一样 通过我的研究,我发现了很多关于一种叫做外壳之类的东西的相关信息。我最终陷入了这样的境地,尽管它所说的似乎是可行的,但我根本不知道如何实施它,也不知道它到底是关于什么的。对不起,如果我听起来很粗鲁 OS是Windows .< /p> 首先需要知道如何在C++中修改注

我想要的是,通过我自己的应用程序,自动将自定义文件扩展名与自定义图标关联起来。例如,使所有当前和后续的.foo文件都有自己的图像,而不是默认的平淡白纸。就像Java在安装.jar文件和Dev-C++到.C和.cpp时对它们所做的一样

通过我的研究,我发现了很多关于一种叫做外壳之类的东西的相关信息。我最终陷入了这样的境地,尽管它所说的似乎是可行的,但我根本不知道如何实施它,也不知道它到底是关于什么的。对不起,如果我听起来很粗鲁


OS是Windows .< /p> 首先需要知道如何在C++中修改注册表,这里有一个帖子解释:

在您提供的链接中,您有需要更新的密钥

HKEY_CLASSES_ROOT/[yourextension]


调用SHChangeNotify只需告诉explorer在您修改图标后刷新即可。

这与语言无关,它特定于您使用的shell/OS(即,实现这一点的技术因Windows、Linux/Gnome、Linux/KDE、Mac OS X等而异)。您链接到的页面是关于注册表的。这是Windows存储文件关联(以及大量其他内容)的地方。建议你在谷歌上搜索注册表的工作原理,以及如何在代码中修改它。你的程序是基于win32的应用程序吗?链接是正确的。安装程序写入这些注册表项。