Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.18;
Скачать: CL | DM;

Вниз

Помогите с указателями   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
11-58607
Nwm
2003-01-06 10:15
2003.09.18
Иконку из Imagelist в ТKOLMainMenu, без всяких там... штучек.


7-58953
Сергей Князев
2003-07-03 10:41
2003.09.18
Два модема одновременно


1-58697
msdns
2003-09-08 08:00
2003.09.18
Ошибка в Delphi


1-58779
Юлия
2003-09-05 13:47
2003.09.18
Работа с excel


14-58917
strelok
2003-08-26 10:12
2003.09.18
софт с интерфейсом на html