Други!

вот загорелся я идеей написать очень нужную мне (ну также думаю не только мне) прогу, которая будет запоминать и сохранять в ini файл ID значка с рабочего стола и его положение x, y.
Функция получения управления рабочим столом:
Код:
function GetDesktopListViewHandle: THandle;
var
S: String;
begin
Result := FindWindow('ProgMan', nil);
Result := GetWindow(Result, GW_CHILD);
Result := GetWindow(Result, GW_CHILD);
SetLength(S, 40);
GetClassName(Result, PChar(S), 39);
if PChar(S) <> 'SysListView32' then
Result := 0;
end;
--------------------------------------------->
Т.Е. с помощью следующей команды:
uses CommCtrl;
----------------
ListView_SetItemPosition(GetDesktopListViewHandle, i,x,y); - я могу задать ярлыку с индексом i параметры x, y.
Всё это работает, вот только мне нужна помощь :
---> Поиск, получение и вывод информации о каждом ярлыке (его значение переменной i, и координаты на столе (x,y) + имя конечно

) - всё это нужно вывести ну допустим в listview или memo, я думаю без разницы. Потом если вы можете мне помочь, мне нужно записать все эти полученные данные в ini файл в каталоге с exe (savedialog с указанием имени+ маска) и при запуске проги из выпадающего списка чтобы было можно выбрать этот ini файл с параметрами и при нажатии на батон - чтобы по этим параметрам в файле значки выстраивались на раб столе. Я протестил этот код, работает, вот только немогу автоматизировать получение индексов i у ярлыков - в ручную это жесть! Выручите дядьку, а то как дрова на видяху ставишь - всё летит, потом вручную их расставляешь, неудобнА!

Заранее спасиба!
Aristarh Dark: Не забываем про тэги