Как я могу получить значок исполняемого файла в .Net? - PullRequest
4 голосов
/ 26 января 2010

Я ищу значок приложения исполняемого файла в .Net. Как я могу это сделать? Я думаю, мне придется запросить его ресурсы, кое-как, но я открыт для любого общего решения.

Ответы [ 2 ]

3 голосов
/ 26 января 2010

С трудного пути:

Icon ico = System.Drawing.Icon.ExtractAssociatedIcon(filePath);

Из ресурса dll:

// Process handle
IntPtr processHandle  = System.Diagnostics.Process.GetCurrentProcess().Handle;

// DLL path
string DLLPath = Path.Combine(Environment.SystemDirectory, "shell32.dll");

// Open folder icon index
int iconIndex         = 4; 

// Extract icon
System.IntPtr oPtr = ExtractIcon(processHandle, DLLPath, iconIndex);

Icon oIcon = Icon.FromHandle(oPtr);

От:

C # Извлечение значков и системных значков

1 голос
/ 26 января 2010

Следующее должно работать. Он также тянет значок для других типов файлов (например, белый лист бумаги для .txt), хотя он не будет извлекать встроенные миниатюры (так как они добавляются расширениями оболочки).

icon = Icon.ExtractAssociatedIcon(filename);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...