Вниз
Скачать: CL | DM;

Получить иконку связанную с недоступным в сети файлом   Найти похожие ветки 

← →
roughneck   (2008-09-18 11:01) [0]

Проблема получить иконку связанную с определенным файлом или папкой.
SHGetFileInfo - работает отлично, но только если есть доступ к файлу или папке. А как быть если файл не доступен (SHGetFileInfo - виснет).


← →
KilkennyCat ©   (2008-09-18 11:24) [1]

нет файла - нет иконки. если конечно, они не хранятся как у офиса, где-то в perfetchчегототам


← →
roughneck   (2008-09-18 11:58) [2]

вот например, ярлык на \\server\h$ получит иконку даже если  \\server не доступен.
а как получать из perfetchчегототам? и чего там ваще есть?


← →
clickmaker ©   (2008-09-18 12:04) [3]

SHGetFileInfo

SHGFI_USEFILEATTRIBUTES
Indicates that the function should not attempt to access the file specified by pszPath

(c) MSDN


← →
KilkennyCat ©   (2008-09-18 12:21) [4]


> вот например, ярлык на \\server\h$ получит иконку даже если
>  \\server не доступен.

так это системная иконка расшаренного ресурса, как я понимаю. берется откуда-нить из shell32.dll

> а как получать из perfetchчегототам? и чего там ваще есть?

http://askbobrankin.com/windows_prefetch.html
кроме того, где-то я читал, что некоторые приложения, например офис, вроде бы с 2003 версии, хранят там иконки.


← →
roughneck   (2008-09-18 12:22) [5]

здорово. Только теперь на любую папку отображается иконка для неизвестного типа файлов.


← →
kami ©   (2008-09-18 22:06) [6]

> Только теперь на любую папку отображается иконка для неизвестного
> типа файлов

FILE_ATTRIBUTE_DIRECTORY в dwFileAttributes


← →
GrayFace ©   (2008-09-25 12:54) [7]

Еще можно запрашивать показ иконки в отдельном потоке. Пока не загрузится, показывать, что недоступна. Дома смогу дать пример. И еще, кроме SHGetFileInfo есть интерфейс (название щас не помню), который возвращает иконки быстрее и иногда иконку можно достать только через него - например, для файлов на ftp.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.009 c
15-1254127105
@!!ex
2009-09-28 12:38
2009.11.22
Как из SVN репозитория удалить два последних коммита?


15-1253880513
Kerk
2009-09-25 16:08
2009.11.22
Рабсила vs труд


11-1207858107
YuriyM
2008-04-11 00:08
2009.11.22
Работа с KOLSQLiteStatic под Lazarus


1-1216636968
apic
2008-07-21 14:42
2009.11.22
Перемещение ярлыков


1-1225455345
DelphiLexx
2008-10-31 15:15
2009.11.22
Заставить Application.ProcessMessages работать в чужом потоке




   Наверх