Search code examples
windowswinapiiconsgdi

How to clone an icon


In Windows, given a handle to an icon (HICON), how do you clone it?

e.g.

HICON CloneIcon(HICON OriginalIcon)
{
    ICON clone;
    //...

    return clone;
}

Solution

  • Use the Win32 API function DuplicateIcon:

    HICON CloneIcon(HICON OriginalIcon)
    {
        return DuplicateIcon(NULL, OriginalIcon); //first parameter is unused
    }