Здравствуйте, NekitoSP, Вы писали:
NSP>где вообще хранится такая информация?
Где оно хранится я навскидку не скажу, но могу показать, как к этому добратся. Кстати, если в качестве шела используется что-то другое — фиг его знает, что получиься — скорее всего ничего.
// получаем SysListView32, т.к. это и есть то, на чем расположены иконки
function GetSysListView32: THandle;
begin
Result := FindWindow('Progman', nil);
Result := FindWindowEx(Result, 0, nil, nil);
Result := FindWindowEx(Result, 0, nil, nil);
end;
// дальше работаем с этим ListView
LVH:=GetSysListView32;
ItemsCount := SendMessage(LVH, LVM_GETITEMCOUNT, 0, 0); // сколько элементов
for i := 0 to ItemsCount - 1 do
begin
nb := SendMessage(LVH, LVM_GETITEMTEXT,......); // получаем текст
SendMessage(LVH, LVM_GETITEMPOSITION, i,........); // получаем позицию
end;
Идея ясна?