using System;
using System.Drawing; //For Icon
using System.Reflection; //For Assembly
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
try
{
//Gets the icon associated with the currently executing assembly
//(or pass a different file path and name for a different executable)
Icon appIcon = Icon.ExtractAssociatedIcon(Assembly.GetExecutingAssembly().Location);
}
catch(ArgumentException ae)
{
//handle
}
}
}
}
Ответ 3
Используйте ExtractIconEx (и здесь) p/invoke. Вы можете извлекать маленькие и большие значки из любой DLL или EXE. Shell32.dll имеет более 200 значков, которые весьма полезны для стандартного приложения Windows. Вам просто нужно сначала выяснить, какой индекс для нужного вам значка.
Изменить: я быстро нашел SO и нашел этот. Значок индекса 0 - значок приложения.