Форум: "Основная";
Текущий архив: 2003.09.18;
Скачать: [xml.tar.bz2];
ВнизПомогите с указателями Найти похожие ветки
← →
konstantinov (2003-09-05 17:57) [0]Рискну еще раз поднять тему
пытаюсь получить координаты иконки на рабочем столе,
пишу:
var
DesktopHandle:Integer;
Count,I,X,Y : integer;
M : TPoint;
begin
DesktopHandle := FindWindow("ProgMan", nil);
DesktopHandle := GetWindow(DesktopHandle, GW_CHILD);
DesktopHandle := GetWindow(DesktopHandle, GW_CHILD);
Count := SendMessage(DesktopHandle, LVM_GETITEMCOUNT, 0, 0); Memo1.Lines.Add("Count Icon - "+IntToStr(Count));
for I := 0 to Count - 1 do
begin
M := Point(0,0);
SendMessage(DesktopHandle,LVM_GETITEMPOSITION,I,longInt(@M));
Memo1.Lines.Add(IntToStr(M.x)+" "+IntToStr(M.y));
end;
end;
получаю - хрена лысого, а не координаты.
В переменной M остаются прежние значения.
Где ошибка?
← →
MBo (2003-09-05 17:58) [1]читай Рихтера.
LVM_GETITEMPOSITION из чужого процесса без внедрения не сделаешь
← →
ZEE (2003-09-05 18:08) [2]>DesktopHandle := FindWindow("ProgMan", nil);
>DesktopHandle := GetWindow(DesktopHandle, GW_CHILD);
>DesktopHandle := GetWindow(DesktopHandle, GW_CHILD);
интересно, три раза DesktopHandle задается - это наверно для надежности :)
← →
Sandman25 (2003-09-05 18:10) [3][2] ZEE © (05.09.03 18:08)
Нет, это пример того, что в любой книге советуют избегать - использование одной переменной для хранения различной информации. В разное время хранятся разные по смыслу данные.
← →
konstantinov (2003-09-05 18:20) [4]А никто не подкинет ссылочку по поводу Рихтера?
>Sandman25 © (05.09.03 18:10)
Спасибо! Учту на будущее.
← →
MBo (2003-09-05 18:30) [5]>ссылочку по поводу Рихтера?
mbo88.narod.ru
← →
konstantinov (2003-09-05 20:31) [6]Большое спасибо! Пошел копать.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.09.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c