How do I set the executable icon for my C++ application in visual studio 2008?
C++ – How to set the icon for the application in visual studio 2008
ciconsvisual studiovisual-studio-2008
Related Topic
- Visual-studio – What are the various “Build action” settings in Visual Studio project properties and what do they do
- Visual-studio – How to add an existing directory tree to a project in Visual Studio
- Visual-studio – Command to collapse all sections of code
- C++ – the “–>” operator in C/C++
- Visual-studio – Difference between Build Solution, Rebuild Solution, and Clean Solution in Visual Studio
- Android – Set icon for Android application
- Visual-studio – How to auto format code in Visual Studio
- Java – Why is processing a sorted array faster than processing an unsorted array
Best Answer
This is how you do it in Visual Studio 2010.
Because it is finicky, this can be quite painful, actually, because you are trying to do something so incredibly simple, but it isn't straight forward and there are many gotchas that Visual Studio doesn't tell you about. If at any point you feel angry or like you want to sink your teeth into a 2 by 4 and scream, by all means, please do so.
Gotchas:
1) Open VIEW > RESOURCE VIEW (in the middle of the VIEW menu), or press Ctrl+Shift+E to get it to appear.
2) In Resource view, right click the project name and say ADD > RESOURCE...
3) Assuming you have already generated an .ico file yourself, choose Icon from the list of crap that appears, then click IMPORT.
4) At this dialog
*.ico
files aren't listed, and you can't use a regular PNG or JPG image as an icon, so change the file filter to*.ico
using the dropdown. Misleading UI, I know, I know.5) If you compile your project now, it will automatically stick the .ico with the lowest ID (as listed in
resource.h
) as the icon of your .exe file.6) If you load a bunch of ICO files into the project for whatever reason, be sure the .ico you want Visual Studio to use has the lowest id in
resource.h
. You can edit this file manually with no problemsEg.
IDI_ICON1 is used
Now IDI_ICON2 is used.