Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.09.26;
Скачать: [xml.tar.bz2];

Вниз

ListView от DeskTop   Найти похожие ветки 

 
GROL   (2002-08-06 09:28) [0]

Всем привет.

Нужно "взять" все иконки с рабочего стола. Для этого берем subj.
Делаю так:

ImageListHandle:=ListView_GetImageList(GetDesktop,LVSIL_NORMAL);
ListView_SetImageList(myListView.Handle, ImageListHandle, LVSIL_NORMAL);

Этот код работает в Win98 а в Win2k нет. Количество иконок берется. Не берется изображение, как будто ImageListHandle пустой, но он не нулевой.
Где подкрутить?

Шеловскую реализацию
SHGetFileInfo(... , SHGFI_SYSICONINDEX or SHGFI_LARGEICON)
не использую, т.к. нужен порядок, в котором иконки на десктопе,
хотя, используя ListView_GetItem, не всегда порядок точный.


 
Song   (2002-08-06 10:42) [1]

Нужно внедрение в чужое адресное пространство.


 
GROL   (2002-08-06 11:29) [2]

Так и сделано.
Через хук в длл говорит, вот у тебя на рабочем столе столько то иконок, так их зовут, и такие вот у них индексы для иконок. С этим нет проблем. А теперь, как эти иконки у системы взять?
Я написал, как я это сделал, но этот код работает только под Win98, а Win2000 делает вид что этот ImageList пустой :(

Я поэксперементировал. Взял родной Дельфовый пример Virtual Listview, и прикрутил колонку с номером иконки. Так вот, в Win98 эти номера хаотично разбросаны, т.е. как бы уникальны для системы. Запускаю под W2k - фиг! Иконки имеют номера по порядку как их востребовали, т.е. если перезапустить програмку, и открывать папки в другом порядке, то номера иконок не будут совпадать с теми, которые были в предыдущем запуске. :(


 
GROL   (2002-08-09 09:51) [3]

Судя по отсутствию предложений, то никак... :(
Напверно прийдется через shell их вытягивать.



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

Форум: "WinAPI";
Текущий архив: 2002.09.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.008 c
1-85474
kex86
2002-09-10 02:34
2002.09.26
RichEdit


3-85324
Леван
2002-08-30 14:28
2002.09.26
Delphi+sql server 7.0


3-85414
Awex
2002-09-05 19:02
2002.09.26
Русские имена метаобъетов в Interbase (Диалект 3)


3-85313
Шурик Ш
2002-09-06 11:44
2002.09.26
Запрос


1-85547
NVladimir
2002-09-12 14:27
2002.09.26
Объем программы в ОЗУ





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский