Как лучше распаковывать иконки? - PullRequest
3 голосов
/ 26 мая 2011

Я создал окно проводника, которое сканирует каталоги при загрузке для типов файлов и т. Д. При первой загрузке, я использую

internal static extern uint ExtractIconEx(string szFileName, uint nIconIndex, IntPtr[] phiconLarge, IntPtr[] phiconSmall, uint nIcons);

и

internal static unsafe extern int DestroyIcon(IntPtr hIcon);

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

1 Ответ

1 голос
/ 26 мая 2011

В качестве альтернативы вы можете сделать это с помощью system.drawing

var icon = System.Drawing.Icon.ExtractAssociatedIcon(@"c:\xxx\some.file");

(вам нужно изменить размер для небольшого размера оболочки)

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