what I just posted is the old W2K look. The other pics are from newer (Win7 in my case) versions. The difference is obvious.
I have no access to a W2K machine, but I believe you, of course. So instead of the crappy grey icon, you get this colourful icon... but it doesn't change the rule that with LoadIcon, hInstance... you get an icon from the embedded resoures of your own exe, while with LoadIcon, NULL... you get some default icon as a friendly gift from Windows ;-)
Quite right, old chap. What we're still not sure of is what, exactly, the OP wants. Do they want the "generic" icon or something specific to their executable? In any case, they now have no excuse for not being able to load
something, since I've shown that you can use
LoadIcon() with a NULL hInstance to load ... something.
BTW, that "crappy" icon isn't gray, it's green. And it is a "new" one, not one that dates back to the 20th century.